arboles m-way, 2-3 y 2-3-4

15
ARBOLES M-WAY, 2-3 y 2-3-4 Autor: Daniel Gomez Jaramillo

Upload: daniel-gomez-jaramillo

Post on 13-Apr-2017

97 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Arboles M-Way, 2-3 y 2-3-4

ARBOLESM-WAY, 2-3 y 2-3-4

Autor:

Daniel Gomez Jaramillo

Page 2: Arboles M-Way, 2-3 y 2-3-4

CONTENIDO

1. Introducción

2. Descripción de los arboles.

I. Ventajas y desventajas.

II. Funcionamiento

III. Complejidad computacional

IV. Aplicaciones y usos en la actualidad

3. Conclusiones

4. Bibliografía.

Page 3: Arboles M-Way, 2-3 y 2-3-4

INTRODUCCIÓN

Los arboles son estructuras de datos no lineales

Tiene la característica que sus elementos se pueden recorrer de distintas formas,

no necesariamente uno detrás de otro

Estos resultan muy útiles para la búsqueda y recuperación de información

Page 4: Arboles M-Way, 2-3 y 2-3-4

VENTAJAS Y DESVENTAJAS

VENTAJAS

• Almacena los datos de una forma rápida yeficiente.

• Excelente para la búsqueda, esta siempre esinmediata, ya que los datos se vaningresando de forma ordenada.

DESVENTAJAS

• La implementación puede llegar a sercompleja.

Page 5: Arboles M-Way, 2-3 y 2-3-4

DESCRIPCIÓN ARBOL M - WAY

Los arboles multicamino, o m-way son una generalización de los arboles binarios, que pueden almacenar m-1

claves, y tener m hijos. Este es un árbol lleno y balanceado, todas sus hojas se encuentran en el mismo nivel.

El orden de este tipo de árbol es m, por lo cual posee un máximo de m ramas, y un minio de m/2; además

que puede almacenar un total de m-1 claves, con lo cual un árbol binario es un tipo especial de árbol m-way

con m=2.

Este tipo de árbol es especialmente útil para sistemas de archivos y para el manejo de sistemas de bases de

datos, ya que permiten almacenar grandes cantidades de datos.

Una característica muy importante de este tipo de árbol es que los valores se guardan en orden ascendente

Page 6: Arboles M-Way, 2-3 y 2-3-4

DESCRIPCIÓN DEL ARBOL 2-3

Se define como un árbol en dónde todos los nodos no-terminales tienen 2 o 3 descendientes y todos los

nodos hoja tienen la misma longitud o distancia desde la raíz.

Fueron introducidos con el objetivo de mejorar el tiempo de acceso en estructuras de datos manejados en

memoria secundaria, donde el número de consultas a un registro influye de manera determinante en el

tiempo de respuesta de la operación.

Un árbol 2-3 permite que un nodo tenga dos o tres hijos. Esta característica le permite conservar el balanceo

tras insertar o borrar elementos.

En un árbol 2-3, los nodos internos han de tener 2 ò 3 hijos y todas las hojas han de estar al mismo nivel.

Page 7: Arboles M-Way, 2-3 y 2-3-4

DESCRIPCIÓN ÁRBOL 2-3-4

Un árbol 2-3-4 es una extensión del árbol 2-3, con la diferencia que todos los nodos del árbol pueden tener

un máximo de 4 hijos, y cumplen con las siguientes características.

Cada nodo interno es un nodo 2-3-4.

Un nodo 2 tiene 1 elemento

Un nodo 3 tiene 2 elementos

Un nodo 4 tiene 3 elementos

Page 8: Arboles M-Way, 2-3 y 2-3-4

EJEMPLOS DE ARBOL 2-3-4

Metodología a seguir:

Los nuevos elementos se insertan siempre en las hojas.

Se atraviesa el árbol hacia abajo hasta encontrar la hoja donde insertar.

Dependiendo de si encontramos nodos llenos tenemos 3 casos:

1. Inserción sin subdividir nodos

2. Inserción subdividiendo nodos

3. Inserción subdividiendo la raíz

Queremos insertar de una sola pasada, por tanto cada nodo que encontremos lleno lo subdividimos.

Page 9: Arboles M-Way, 2-3 y 2-3-4

1. Inserción sin subdividir nodos

No encontramos nodos llenos en el camino de la raiz a la hoja: insertamos 18 en el siguiente árbol.

Page 10: Arboles M-Way, 2-3 y 2-3-4

2. Inserción subdividiendo nodos :

Cuando encontramos un nodo lleno en el camino de la raiz a la hoja: insertamos el 99.

Page 11: Arboles M-Way, 2-3 y 2-3-4

3. Inserción subdividiendo la raíz.

Esto ocurre cuando nos encontramos la raíz llena. Dividimos la raíz (cuatro hijos) en 3 nodos de dos hijos

cada uno. Insertamos 41.

Page 12: Arboles M-Way, 2-3 y 2-3-4

Generar un árbol 2-3-4 con la secuencia:

70, 50, 30, 40, 20, 80, 25, 90, 75, 10 RESULTADO

Page 13: Arboles M-Way, 2-3 y 2-3-4

APLICACIONES Y USOS EN LA ACTUALIDAD

Una de las muchas aplicaciones que tienen estos tipos de arboles y que a muchos nos interesaría,

encontramos a la teoría de Compiladores, durante la fase de análisis del código fuente, los analizadores

léxico, sintáctico y semántico utilizan tablas de símbolos, en donde se almacenan las palabras clave y las

palabras reservadas y sus atributos, implementadas (por lo general) como árboles M-Way.

Otro ejemplo de la utilización de árboles de este tipo son los diccionarios. A partir de una palabra, se

realiza una búsqueda en el árbol para saber si está incluida en el conjunto, y si existe, se obtienen sus

datos asociados (por ejemplo, si es un verbo, un sustantivo, un artículo, etc.).

Page 14: Arboles M-Way, 2-3 y 2-3-4

CONCLUSIONES

La principal ventaja de este tipo de árbol es su eficiencia en el tiempo de ejecución. Este tipo de arboles en

el peor caso tienen una complejidad de 𝑙𝑜𝑔2 𝑛 + 1 y en un caso promedio tienen 𝑙𝑜𝑔3 𝑛 + 1 para la

inserción, para las búsquedas, este es de log(n).

Concluyendo, decimos que para estos tipos de arboles es

conveniente usarlo cuando se trate de elementos no repetidos, a

demás si lo que se desea es acceder a los datos de una forma

eficiente y eficaz, sin duda alguna estos arboles servirán para dicho

propósito.

Page 15: Arboles M-Way, 2-3 y 2-3-4

¡¡ GRACIAS !!

Programación II: Estructura de Datos y Análisis de Algoritmos.