arboles de busqueda

11
HENRY BARROS

Upload: henry-barros

Post on 22-Jan-2018

144 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Arboles de busqueda

HENRY BARROS

Page 2: Arboles de busqueda

Un árbol ordenado es aquel en elcual la distribución de las ramas sigue ciertoorden. Los árboles ordenados de grado 2 sonde especial interés puesto que representanuna de las estructuras de datos másimportante en computación, conocida comoárboles binarios. En un árbol binario cadanodo puede tener como máximo dossubárboles; y siempre es necesario distinguirentre el subárbol izquierdo y el subárbolderecho

Arboles Binarios

Mas información:

Arboles Binarios

ejemplos ilustrativos

ARBOLES

Page 3: Arboles de busqueda

Son estructuras de datos de árbol que se encuentrancomúnmente en las implementaciones de bases dedatos y sistemas de archivos.

Page 4: Arboles de busqueda

• Son árboles balanceados de búsqueda

• Cada nodo puede poseer más de dos hijos.

• Mantienen los datos ordenados

• Las inserciones y eliminaciones se realizan en tiempologarítmico amortizado.

Page 5: Arboles de busqueda

• En ciencias de la computación,un árbol B+ es un tipode estructura de datos de árbol,representa una colección dedatos ordenados de manera quese permite una inserción yborrado eficientes de elementos.Es un índice, multinivel,dinámico, con un límite máximoy mínimo en el número de clavespor nodo. Un árbol B+ es unavariación de un árbol B.

Page 6: Arboles de busqueda

• Los árboles B+ se han convertido en la técnica masutilizada para la organización de archivosindizados. La principal característica de estosarboles es que todas las claves se encuentran en lashojas y por lo tanto cualquier camino desde la raízhasta alguna de las claves tienen la mismalongitud.

ARBOL B+ DE ORDEN 2

Page 7: Arboles de busqueda

• Un árbol equilibrado o árbol AVL es un árbol binario de búsqueda en

el que las alturas de los subárboles izquierdo y derecho de cualquier

nodo difieren como máximo en 1.

• La altura o profundidad de un árbol binario es el nivel máximo de sus

hojas más uno. La altura de un árbol nulo se considera cero.

• 0 cuando son iguales.

• 1 cuando altura derecho > izquierdo.

• -1 cuando altura izquierdo > derecho.

Page 8: Arboles de busqueda

• No resulta fácil determinar la altura promedio de un árbol AVL, por

ello se determina la altura en el peor de los casos, es decir, la

altura máxima que puede tener un árbol equilibrado con un número

de nodos n. La altura es un parámetro importante ya que coincide

con el número de iteraciones que se realizan para bajar desde el

nodo raíz al nivel mas profundo de las hojas.

• El árbol equilibrado de n nodos menos denso tiene como altura

(1.44*log (n)), donde n es el número de nodos en el peor de los

casos del árbol AVL de altura h y se puede afirmar que la

complejidad de una búsqueda es O(Log n).

Page 9: Arboles de busqueda

• Para corregir el factor de equilibrio de un nodo, se realiza sobre él

una rotación simple o doble. Rotaciones: secuencia de rotaciones de

punteros que se intercambian cíclicamente (por medio de ciclos).

• Un hecho muy importante de estas rotaciones, es que se mantiene

el ordenamiento del árbol, si el árbol original era ABB, el resultado

también lo seguirá siendo.

• El factor de equilibrio es la diferencia entre las alturas del árbol

derecho y el izquierdo:

• FE = altura subárbol derecho - altura subárbol izquierdo

• Por definición, para un árbol AVL, este valor debe ser -1, 0 ó 1, si

sobrepasa este valor es necesario requilibrar.

Page 10: Arboles de busqueda

• Si el nodo está desequilibrado a la derecha (FE > +1), y su hijo

derecho tiene el mismo signo (+) hacer rotación simple a la

izquierda.

Page 11: Arboles de busqueda

• Si el nodo está desequilibrado a la izquierda (FE < –1), y su hijo

izquierdo tiene distinto signo (+) hacer rotación doble izquierda-

derecha.