Beruflich Dokumente
Kultur Dokumente
CARRERA DE INGENIERÍA EN
SISTEMAS
Matemáticas Discretas
Estudiante:
Jorge Luis Pucha B.
Curso:
3er Ciclo Ing. Sistemas “A”
PERIODO:
OCTUBRE 2017 – MARZO 2018
Tema: Investigar y realizar 2 ejercicios de los métodos a continuación descritos: prefijo,
infijo, postfijo, preorden, inorden, postorden, por nivel, por anchura, por profundidad.
Antecedentes:
Notación Prefija
Historia
Ejemplo
Notación infijo
Ejemplo
Notación postfija
Historia
Funcionamiento
Árbol binario
Un árbol binario sencillo de tamaño 9, 4 niveles y altura 3 (altura = máximo nivel - 1), con un
nodo raíz cuyo valor es 2.
Un árbol binario es un árbol en el que ningún nodo puede tener más de dos subárboles. En un
árbol binario cada nodo puede tener cero, uno o dos hijos (subárboles). Se conoce el nodo de
la izquierda como hijo izquierdo y el nodo de la derecha como hijo derecho.
Recorrido en preorden En este tipo de recorrido se realiza cierta acción (quizás simplemente
imprimir por pantalla el valor de la clave de ese nodo) sobre el nodo actual y posteriormente
se trata el subárbol izquierdo y cuando se haya concluido, el subárbol derecho. Otra forma
para entender el recorrido con este método seria seguir el orden: nodo raíz, nodo izquierda,
nodo derecha.
Recorrido en inorden En este caso se trata primero el subárbol izquierdo, después el nodo
actual y por último el subárbol derecho. En un ABB este recorrido daría los valores de clave
ordenados de menor a mayor. Otra forma para entender el recorrido con este método seria
seguir el orden: nodo izquierda, nodo raíz, nodo derecha.
Recorrido por anchura El recorrido en anchura de un árbol consiste en visitar todos los
elementos del árbol una sola vez:
• Primero se visitan los elementos del nivel 0, luego los del nivel 1, y así sucesivamente,
• En cada nivel, se visitan los elementos de izquierda a derecha.
Búsqueda en profundidad (DFS – Depth First Search)
Una búsqueda en profundidad la realizamos yendo al primer vértice hijo que encontremos.
Repetimos esto hasta llegar al vértice con la respuesta o a una hoja. En caso de que
encontremos la respuesta, paramos; en caso de que lleguemos a una hoja, regresamos un
nivel y buscamos en los vértices que no hayamos visitado. Para saber como regresarnos, los
vértices los vamos guardando en una pila (sección 11.4). Es por esto que se acostumbra
programar esta búsqueda de forma recursiva, con lo que el manejo de la pila lo realiza el
lenguaje.
Haciendo una búsqueda en profundad del árbol anterior, recorreríamos los vértices en el
siguiente orden:
4. Descripción (desarrollo):
InOrden: 3-6-9-12-15-18-19-24-27-30-33-36
PostOrden: 3-9-6-15-19-18-12-27-36-33-30-24
Por Profundidad: 4
PreOrden: F-B-A-D-C-E-G-I-H
InOrden: A-B-C-D-E-F-G-H-I
PostOrden: A-C-E-D-B-H-I-G-F
Por Profundidad: 4
Notación Inicial
(7+5)*4-(3-9)*(8+1)
Notación Infija
(((7+5)*4)-((3-9)*(8+1)))
((12*4)-(-6*9))
(48+54)
102
Notación Prefija
- * + 7 5 4 * - 3 9 + 8 1
- * + 7 5 4 * - 3 9 9
- * + 7 5 4 * -6 9
- * + 7 5 4 -54
- * 12 4 -54
- 48 -
54
102
Notación Postfija
7 5 + 4 * 3 9 - 8 1 + * -
12 4 * 3 9 - 8 1 + * -
48 3 9 - 8 1 + * -
48 -6 8 1 + * -
48 -6 9 * -
48 -54 -
102
Conclusiones
Recomendaciones: