Recorrido Sobre Árboles
Recorrido Sobre Árboles
Recorrido Sobre Árboles
Los recorridos son algoritmos que nos permiten recorrer un árbol en un orden especifico, los
recorridos nos pueden ayudar encontrar un nodo en el árbol, o buscar una posición
determinada para insertar o eliminar un nodo.
Básicamente podemos catalogar las búsqueda en dos tipos, las búsqueda en profundidad y
las búsquedas en amplitud.
Búsquedas no informadas
Las búsquedas no informadas son aquellas en que se realiza el viaje por todo el árbol sin
tener una pista de donde pueda estar el dato deseado. Este tipo de búsquedas también se
conocen como búsquedas a ciegas.
Para comprender mejor que es una búsqueda no informada expondremos el siguiente
ejemplo:
Imagine que vamos por la carretera y de repente encontramos dos caminos, el problema a
qui es que uno después de 50 kilómetros esta en construcción y el otro nos lleva a nuestro
destino, sin embargo ninguno de los caminos tiene señalamiento. Lo que tendríamos que
hacer es recorrer el primero camino y después de 50 kilómetros encontrarnos con que el
camino esta en construcción, entonces tendríamos que regresar para irnos por el segundo
camino,el cual nos lleva a nuestro destino(Para esto ya recorrimos los 50 kilómetros de ida
y los 50 kilómetros de regreso lo que nos da 100 kilómetros mas a nuestra ruta).
A este tipo de escenarios en los cuales las búsquedas de hacen a ciegas los conocemos
como búsquedas no informadas.
Las siguientes métodos de búsqueda que veremos a continuación(Búsqueda en profundad
y Búsqueda en amplitud) pertenecen a las búsquedas no informadas.
Búsqueda en profundidad
Recorrido Pre-orden: El recorrido inicia en la Raíz y luego se recorre en pre-orden cada
unos de los sub-árboles de izquierda a derecha.
Esta definición puede ser un poco compleja de entender por lo que mejor les dejo la siguiente
imagen.
Fig. 12:En la imagen podemos ver el orden en que es recorrido el árbol iniciando desde la Raíz.
Búsqueda en amplitud.
Se recorre primero la raíz, luego se recorren los demas nodos ordenados por el nivel al que
pertenecen en orden de Izquierda a derecha.
Este tipo de búsqueda se caracteriza por que la búsqueda se hace nivel por nivel y de
izquierda a derecha.
Fig. 18: En la
imagen se observa como es que un nodo es buscado mediante la búsqueda en profundidad.
En la imagen podemos observa que el árbol es recorrido en su totalidad pero esto no siempre
es a sí, ya que el algoritmo se detiene cuando el elemento buscado es encontrado.