Estructura de Datos Árboles Árboles 2-3

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Estructura de Datos Árboles Árboles 2-3"

Transcripción

1 Estructura de Datos Árboles Árboles 2-3 Prof.: Mauricio Solar Prof.: Lorna Figueroa Primer Semestre, Arboles Árbol n-ario ordenado de orden 3 Cada nodo tiene 1 ó 2 elementos 75 Nodo con dos elementos Nodo con un elemento 2 Arboles Cada nodo tiene 1, 2 ó 3 subárboles asociados 75 3 subárboles subárboles 1 subárbol

2 Arboles Ordenado No hay elementos repetidos El elemento de la izquierda de cada nodo (raíz izquierda) es menor que el elemento de su derecha (raíz derecha) 75 Raíz izquierda Raíz derecha Arboles Ordenado El primer subárbol es un árbol que contiene elementos menores que la raíz izquierda. Primer subárbol Árbol 1-2-3: Árbol triario ordenado El segundo subárbol es un árbol que contiene elementos mayores que la raíz izquierda pero menores que la raíz derecha Segundo subárbol

3 Árbol 1-2-3: Árbol triario ordenado El tercer subárbol es un árbol que contiene los elementos mayores que la raíz derecha Tercer subárbol Árbol 1-2-3: Árbol triario ordenado Si la raíz derecha está vacía, su tercer subárbol debe ser vacío (el segundo puede o no ser vacío) Árbol 2-3 Motivación: Optimizar el tiempo de acceso en una estructura de datos manejadas en memoria secundaria, en las cuales el número de consultas a un registro influye de manera determinante en el tiempo de respuesta de la operación. Acceso a la información en O(log 3 N) Baja complejidad en los algoritmos de actualización. 9

4 Árboles 2-3 Es un árbol triario ordenado balanceado: Todas las hojas se encuentran en el mismo nivel, ordenadas de izquierda a derecha. Todos los nodos internos tienen por lo menos 2 subárboles asociados no vacíos, aunque la raíz derecha esté vacía Árbol 2-3 Son un tipo de árbol balanceado por altura. Todos los nodos pueden tener hasta 2 elementos. Un nodo interno puede tener 2 ó 3 hijos, dependiendo de cuántos elementos posea el nodo: Si hay 1 elemento en el nodo, debe tener 2 hijos Si hay 2 elementos en el nodo, debe tener 3 hijos 11 Árboles

5 Arboles Búsqueda en un árbol 2-3 Se empieza por la raíz y se va bajando por el árbol hasta que se encuentre el dato o se llegue a una hoja. Si el árbol está vacío, el dato no está en el árbol. Si no está vacío, primero buscar en la raíz. Si es alguno de los elementos de la raíz, se encontró. En caso contrario: Si el nodo es una hoja y el elemento no está en el nodo, el algoritmo finaliza. 14 Búsqueda en un árbol 2-3 Si el nodo no es una hoja : Si sólo hay un elemento en el nodo: Si es mayor que el dato a buscar, se por el hijo derecho, Si es menor, se por el hijo izquierdo. Si en el nodo hay dos elementos, r 1 y r 2 (con r 1 r 2 ): Si el dato es menor que r 1, buscar por el hijo izquierdo. Si el dato es mayor que r 1 y menor que r 2, buscar por el hijo central. Si es mayor que r 2 buscar por el hijo derecho.

6 Inserción en Arboles 2-3 Al insertar un nuevo dato en un árbol 2-3 se hará de forma que se mantenga el equilibrio en el árbol. 1. Localizar el nodo hoja donde debe ir el elemento. 2. Si hay sólo un elemento en ese nodo, añadir el dato. 3. Si no hay espacio en el nodo para un nuevo elemento, se divide el nodo y el elemento central se inserta en el nodo padre. 16 Inserción en Arboles Si el nodo padre está lleno, al insertar el nuevo elemento se debe repetir el paso Inserción en Arboles 2-3 La secuencia de inserciones y divisiones se puede propagar hacia arriba hasta llegar a la raíz. Cuando la raíz pase a tener 3 elemento (r 1, r 2 y r 3 ) se divide en 2 nuevos nodos r 1 y r 3 creando una nueva raíz que contendrá sólo el elemento r 2. De esta forma, cuando el árbol 2-3 crece en altura, lo hace por arriba, creando una nueva raíz con sólo un elemento. 18

7 Inserción en Arboles 2-3 Las inserciones en un árbol 2-3 tienen dos casos: 1. Hay espacio en el nodo pues hay un sólo elemento. 2. No hay espacio y el nodo debe dividirse en dos y la mediana de los tres elementos se inserta en el padre recursivamente. Esto puede generar una secuencia de divisiones hasta la raíz. 19 Inserción en Arboles 2-3 En todos los casos, el elemento a insertar se denota por x Caso 1: r 1 r 1 < x r 1 x Caso 2: r 1 r 1 > x x r 1 20 Inserción en Arboles 2-3 Caso 3: r 1 r 2 r 2 < x Sube r 2 r 1 r 2 x r 1 x r 2 sube al nodo padre. 21

8 Inserción en Arboles 2-3 Caso 4: r 1 r 2 r 1 > x x r 1 r 2 Sube r 1 x r 2 r 1 sube al nodo padre. 22 Inserción en Arboles 2-3 Caso 5: r 1 r 2 r 1 < x < r 2 r1 x r 2 Sube x r 1 r 2 x sube al nodo padre. 23 Pseudocódigo de inserción en un árbol 2-3 Si el árbol esta vacío, crear un nuevo nodo y colocar r 1 en el lado izquierdo del nodo. Sino, Si hay un elemento y existe espacio en el nodo, si r 1 es menor que el elemento, el elemento se coloca a la derecha. Sino, Si r 1 es mayor que el elemento el elemento se coloca al lado izquierdo y r 1 al lado derecho. Sino, Si el nodo está lleno se divide en dos nodos del mismo nivel, se crea un nuevo nodo y se reparten los tres elementos. Después si elemento es mayor que r 2, sube r 2 a su padre. si elemento es menor que r 1, sube r 1 a su padre. si elemento es mayor que r 1, pero menor que r 2 sube el elemento a su padre. 24

9 Insertar en un árbol2-3 los siguientes elementos: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Input: Insertar en un árbol2-3 los siguientes elementos: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Observe que el árbol crece hacia arriba, por la raíz. 26 S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input:

10 S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Sube el S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: S={ 30, 2,, 63,, 1, 0, 14, 27, 8, 9, 81, 79, 60 } Input: Sube el Sube el

11 S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: 8 1 Sube el

12 S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Sube el

13 S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Sube el Sube el S={ 30, 2,, 63,, 1,0, 14, 27, 8, 9, 81, 79, 60 } Input: Eliminación en un árbol 2-3 La estrategia de eliminación de datos en un árbol 2-3 es complementaria a la de inserción. En la inserción se produce una cadena de divisiones e inserciones hasta que un nodo no necesite dividirse o se llegue a la raíz. En el caso de la eliminación, los nodos se quedan vacíos y se fusionan con sus hermanos, hasta que un nodo quede vacío o se llegue a la raíz.

14 Eliminación en un árbol El proceso siempre va a empezar en un nodo hoja. Si el elemento a borrar está en un nodo interior, se intercambia su valor con el de su sucesor en inorden, menor elemento del subárbol que queda a la derecha del elemento a borrar. 2. Si en la hoja en que se inicia la eliminación hay otro elemento, se elimina. 40 Eliminación en un árbol Si en la hoja es el único elemento, el nodo queda vacío, lo cual no está permitido en árboles 2-3. Para arreglarlo, se fusiona el nodo vacío con uno de sus hermanos. Como el nodo padre ha perdido un hijo, también tiene que tener un elemento menos, por lo que pasa un elemento del padre al nuevo nodo. 4. Si el nodo hermano ya estaba lleno, se divide el nuevo nodo en 2 hijos y el elemento del medio queda como padre. 41 Eliminación en un árbol Si el nodo padre se queda vacío al perder un elemento, se debe de repetir el algoritmo de fusión en el árbol tantos niveles hacia arriba como haga falta hasta encontrar un nodo que no se quede vacío o se llegue a la raíz. Si se llega a la raíz y se queda vacía, entonces tiene un hijo. La raíz se elimina y su único hijo pasa a ser la nueva raíz. 42

15 Eliminar del siguiente árbol 2-3 los elementos : 70, 100 y Como el elemento 70 no está en una hoja, se intercambia con su sucesor en inorden, el 80. El nodo quedaría entonces [80, 90] con tres hijos, [60], [70] y [100] Al borrar el 70, el nodo queda vacío

16 Se intenta escoger para fusionarse un hermano que tenga dos elementos, para que el nodo padre no pierda elementos y evitar que se propaguen la fusiones hacia arriba Como en este caso no hay ningún hermano que pueda ceder un elemento, se escoge un nodo cualquiera, por ejemplo el [60] y se baja un elemento del nodo padre el [80]. El árbol queda finalmente: Borrar el elemento 100, que está en un nodo hoja

17 Este nodo se queda vacío, por lo que hay que realizar el proceso de fusión Como el nodo hermano está lleno, al bajar un elemento del padre, hay que dividirlo y repartir los elementos. Los nuevos nodos son el [60] y el [90] y el [80] es el elemento que pasa al nodo padre Borrar el elemento 80 que está en un nodo intermedio. El primer paso es intercambiarlo por su sucesor en inorden, el

18 Resultado : Al eliminar el 80 de la hoja donde se ha colocado, ésta se queda vacía, por lo que hay que fusionarla con su hermano Su hermano, que no está lleno, acepta el elemento que baja del nodo padre, que se queda vacío :

19 El nodo intermedio que se quedó vacío debe fusionarse con el hermano ([]), que como no está lleno, acepta el elemento que baja de su padre, que se queda vacío Como en el paso anterior, el hermano pasa a tener dos elementos y el padre, en este caso la raíz, se queda vacío: Finalmente, se borra el nodo raíz vacío y su único hijo pasa a ser la nueva raíz. El árbol ha perdido altura:

20 Implementación en un árbol 2-3 typedef struct NodoArbol23 { TipoElemento raiz1, raiz2; struct NodoArbol23 *h_izq, *h_cen, *h_der; } TArbol23, *Arbol23; raíz_izq raíz_der 58 Análisis de la Complejidad La altura h de un árbol 2-3 en el peor caso es cuando es un árbol binario completo: n = (h-1) = (2 h - 1)/(2-1) = 2 h - 1 nodos, es decir h <= log 2 (n+1) En el mejor caso es un árbol ternario, entonces: n = (h-1) = (3 h - 1)/(3-1) = (3 h - 1)/2 nodos, es decir h >= log 3 (2n+1) Luego la altura está entre log 2 (n) y log 3 (n) 59 Ejercicios 1. Muestre el proceso de inserción en un árbol 2-3 de la siguiente secuencia de valores: Insertar las claves, 38, 37, 36, en el siguiente árbol 2-3: 60

21 Bibliografía - Webgrafía Algoritmos en C++ Robert Sedgewick, Fernando Davara Rodríguez, Miguel Katrib Mora, Sergio Ríos Aguilar, Luis Joyanes Aguilar 2000 Addison-Wesley/Díaz de Santos. Introduction to Algorithms, 2nd edition. Cormen, T., Leiserson, Ch., Rivest, R. and Stein, C. MIT Press Data Structures and Algorithms. A. Aho, J. Hopcroft, and J. Ullman. Addison-Wesley, Traducido al castellano, Brassard, Gilles & Bratley, Paul. Fundamentos de Algoritmia. Prentice-Hall cupi2.uniandes.edu.co 61

Estructura de Datos. Árboles Binarios de Búsqueda ABB. Primer Semestre, 2010

Estructura de Datos. Árboles Binarios de Búsqueda ABB. Primer Semestre, 2010 Estructura de Datos Árboles Binarios de Búsqueda ABB Prof.: Mauricio Solar Prof.: Lorna Figueroa Primer Semestre, 20 1 Arboles de Búsqueda Binaria El árbol binario de búsqueda (ABB) toma su nombre del

Más detalles

Estructura de Datos. Árboles B Árboles B* Árboles B + Primer Semestre, 2010

Estructura de Datos. Árboles B Árboles B* Árboles B + Primer Semestre, 2010 Estructura de Datos Árboles B Árboles B* Árboles B + Prof.: Mauricio Solar Prof.: Lorna Figueroa Primer Semestre, 2010 1 Introducción Necesidad de mantener índices en almacenamiento externo para acceso

Más detalles

Árboles. Árboles. Árboles binarios de búsqueda. Árboles. Inserción en un árbol. Árbol binario de búsqueda

Árboles. Árboles. Árboles binarios de búsqueda. Árboles. Inserción en un árbol. Árbol binario de búsqueda Árboles Árboles Mario Medina C. mariomedina@udec.cl Árboles Estructura recursiva Árbol vacío 0 o más árboles hijos Altura ilimitada Árbol binario A lo más dos hijos: izquierdo y derecho Árboles Árboles

Más detalles

Tema 10: Árbol binario de búsqueda

Tema 10: Árbol binario de búsqueda Tema 10: Árbol binario de búsqueda M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Árbol binario de

Más detalles

Árboles B y B ) 20. Algoritmos y Estructuras de Datos II I.T. en Informática de Gestión/Sistemas Universidad de Huelva 63

Árboles B y B ) 20. Algoritmos y Estructuras de Datos II I.T. en Informática de Gestión/Sistemas Universidad de Huelva 63 y B + 3.8 y B+! Problema de los ABB cuando se usa almacenamiento secundario:! la búsqueda de un elemento requeriría muchos accesos a disco (un acceso a disco es extremadamente lento si lo comparamos con

Más detalles

Definición recursiva de los árboles

Definición recursiva de los árboles Árboles Un árbol es una estructura de datos jerarquizada ada dato reside en un nodo, y existen relaciones de parentesco entre nodos: padre, hijo, hermano, ascendiente, descendiente, etc. Ejemplo: apítulos

Más detalles

Árboles n-arios de búsqueda. Lección 16

Árboles n-arios de búsqueda. Lección 16 Árboles n-arios de búsqueda Lección 16 Definiciones Los árboles n-arios de búsqueda (árboles de búsqueda múltiples o multicamino) son árboles de grado n definidos de la forma: si el árbol A es vacío, entonces

Más detalles

Estructura de Datos Unidad 6: ARBOLES

Estructura de Datos Unidad 6: ARBOLES Estructura de Datos Unidad 6: ARBOLES A. CONCEPTO DE ARBOL B. TIPOS DE ARBOL C. ARBOL BINARIO D. IMPLEMENTACION DE UN ARBOL BINARIO E. PROYECTO Introducción En ciencias de la informática, un árbol es una

Más detalles

3.6. Árboles B DEFINICIONES

3.6. Árboles B DEFINICIONES DEFINICIONES Un árbol B de orden m es un árbol m-camino de búsqueda que está vacío o satisface las siguientes propiedades: El nodo raíz tiene al menos una clave (o dos hijos) Todos los nodos interiores,

Más detalles

Algoritmos y Programación II Curso 2006

Algoritmos y Programación II Curso 2006 Arboles: Un árbol es una colección de elementos, llamados nodos, uno de los cuales se distingue con el nombre de raíz. Los nodos mantienen entre ellos una relación que define una estructura jerárquica

Más detalles

Análisis y Complejidad de Algoritmos. Arboles Binarios. Arturo Díaz Pérez

Análisis y Complejidad de Algoritmos. Arboles Binarios. Arturo Díaz Pérez Análisis y Complejidad de Algoritmos Arboles Binarios Arturo Díaz Pérez Arboles Definiciones Recorridos Arboles Binarios Profundidad y Número de Nodos Arboles-1 Arbol Un árbol es una colección de elementos,

Más detalles

Estructuras de datos: Árboles binarios de

Estructuras de datos: Árboles binarios de Estructuras de datos: Árboles binarios de búsqueda, Facultad de Informática Universidad de A Coruña Table of Contents Árboles binarios de búsqueda 1 Árboles binarios de búsqueda 2 Table of Contents Árboles

Más detalles

Estructuras de datos: Árboles binarios de

Estructuras de datos: Árboles binarios de Estructuras de datos: Árboles binarios de búsqueda, Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge santiago.jorge@udc.es Árboles binarios de búsqueda, Table of Contents

Más detalles

Estructura de datos y algoritmos. Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios

Estructura de datos y algoritmos. Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios Estructura de datos y algoritmos Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios TEMA V : TIPOS DE DATOS ABSTRACTOS NO LINEALES: ÁRBOLES 5.1 Conceptos y definiciones 5.2 Árboles perfectamente

Más detalles

Estructuras de Datos Clase 20 Árboles de búsqueda

Estructuras de Datos Clase 20 Árboles de búsqueda Estructuras de Datos Clase 20 Árboles de búsqueda Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina

Más detalles

Estructuras de datos Árboles B

Estructuras de datos Árboles B Estructuras de datos Árboles B Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Árboles B p. 1 Árboles B Árboles B son árboles balanceados que no son binarios. Todos los vértices contienen

Más detalles

Estructuras de Datos. 8.6 Árboles B. Supongamos que los nodos de un árbol deben ser guardados en un medio de almacenamiento secundario (disco).

Estructuras de Datos. 8.6 Árboles B. Supongamos que los nodos de un árbol deben ser guardados en un medio de almacenamiento secundario (disco). 132 El grado de ocupación de una tabla hash se determina mediante el factor de carga, que es la fracción ocupada de la tabla y es un número que está entre 0 y 1 si está vacía o llena respectivamente. Ejercicio:

Más detalles

Estructuras de Datos Clase 14 Árboles binarios de búsqueda

Estructuras de Datos Clase 14 Árboles binarios de búsqueda Estructuras de Datos Clase 14 Árboles binarios de búsqueda Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca,

Más detalles

ARBOLES B. Lo que si es cierto es que la letra B no significa "binario", ya que:

ARBOLES B. Lo que si es cierto es que la letra B no significa binario, ya que: ARBOLES B El problema original comienza con la necesidad de mantener índices en almacenamiento externo para acceso a bases de datos, es decir, con el grave problema de la lentitud de estos dispositivos

Más detalles

Estructuras de Datos y Algoritmos

Estructuras de Datos y Algoritmos Estructuras de Datos y Algoritmos Tema 5.1. Árboles. Árboles binarios y generales Prof. Dr. P. Javier Herrera Contenido 1. Introducción 2. Terminología 3. Árboles binarios 4. Árboles generales Tema 5.1.

Más detalles

Estructuras de Datos II

Estructuras de Datos II Estructuras de Datos II Segundo Parcial Los árboles B+ son estructuras de datos jerárquicas que se utilizan para almacenar y manipular datos ordenados de forma muy eficiente, ya que por su estructura y

Más detalles

Árboles Binarios Ordenados Árboles AVL

Árboles Binarios Ordenados Árboles AVL Árboles Binarios Ordenados Árboles AVL Estructuras de Datos Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Diseño e Implementación TAD Árbol Representación de árboles

Más detalles

ELO320 Estructuras de Datos y Algoritmos. Heap & HeapSort. Tomás Arredondo Vidal

ELO320 Estructuras de Datos y Algoritmos. Heap & HeapSort. Tomás Arredondo Vidal ELO320 Estructuras de Datos y Algoritmos Heap & HeapSort Tomás Arredondo Vidal Este material está basado en: Robert Sedgewick, "Algorithms in C", (third edition), Addison-Wesley, 2001 Thomas Cormen et

Más detalles

Eduardo Mosqueira Rey Bertha Guijarro Berdiñas Mariano Cabrero Canosa

Eduardo Mosqueira Rey Bertha Guijarro Berdiñas Mariano Cabrero Canosa Estructura de Datos y de la Información Eduardo Mosqueira Rey Bertha Guijarro Berdiñas Mariano Cabrero Canosa Laboratorio de Investigación y Desarrollo en Inteligencia Artificial Departamento de Computación

Más detalles

Árboles AVL. Lección 14

Árboles AVL. Lección 14 Árboles VL Lección 14 Árboles inarios Equilibrados Un árbol binario de búsqueda se dice equilibrado (o balanceado) si y sólo si, para cada uno de sus nodos ocurre que las alturas de sus 2 subárboles difieren

Más detalles

Eliminación en un ABB

Eliminación en un ABB Eliminación en un El procedimiento para eliminar un nodo z de un árbol de búsqueda binaria tiene tres casos: aso 1: Si z no tiene hijos, se modifica su padre p[z] para reemplazar z con nil como su hijo.

Más detalles

Tema 2: Grafos y Árboles. Algoritmos y Estructuras de Datos 3

Tema 2: Grafos y Árboles. Algoritmos y Estructuras de Datos 3 Tema 2: Grafos y Árboles Algoritmos y Estructuras de Datos 3 1 ÍNDICE 2.1 Definiciones básicas: grafos y árboles 2.2 Representaciones de árboles y grafos 2.3 Algoritmos de recorrido de árboles binarios

Más detalles

ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES

ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOL Un árbol es un grafo no dirigido, conexo, sin ciclos (acíclico), y que no contiene aristas

Más detalles

Estructuras de Datos

Estructuras de Datos 108 Ejercicio: Genere el árbol binario de búsqueda para la siguiente secuencia de números: 8, 9, 11, 15, 19, 20, 21, 7, 3, 2, 1, 5, 6, 4, 13, 14, 10, 12, 17, 16, 18. Analice y describa lo que sucede durante

Más detalles

Francisco J. Hernández López

Francisco J. Hernández López rancisco. Hernández ópez fcoj23@cimat.mx structura de datos no lineal, en la que cada elemento sólo puede estar enlazado con su predecesor (o nodo padre) y sus sucesores (o nodos hijos) xiste un único

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO ALGORITMOS Y ESTRUCTURAS DE DATOS 1422 5º 09 Asignatura Clave Semestre Créditos Ingeniería Eléctrica Ingeniería en Computación

Más detalles

El método main de la clase PruebaArbol, empieza creando una instancia de un objeto Árbol vacío y asigna su referencia a la variable árbol

El método main de la clase PruebaArbol, empieza creando una instancia de un objeto Árbol vacío y asigna su referencia a la variable árbol Árboles Las listas enlazadas, pilas y colas son estructuras de datos lineales (es decir, secuencias). Un árbol es una estructura de datos bidimensional no lineal, con propiedades especiales. Los nodos

Más detalles

COMPUTABILIDAD Y COMPLEJIDAD

COMPUTABILIDAD Y COMPLEJIDAD COMPUTABILIDAD Y COMPLEJIDAD Año 2017 Carrera: Licenciatura en Informática Plan 2007-2012-2015 Año: 3 Duración: Semestral Profesor: Fernando G. Tinetti FUNDAMENTACION: Se presentan las ideas básicas de

Más detalles

Definición: NODO Un nodo es un punto de intersección o unión de varios elementos que confluyen en el mismo lugar.

Definición: NODO Un nodo es un punto de intersección o unión de varios elementos que confluyen en el mismo lugar. Definición: ÁRBOL El árbol es como un tipo de grafo cíclico, conexo y no dirigido. Las estructuras tipo árbol se usan principalmente para representar datos con una relación jerárquica entre sus elementos.

Más detalles

Universidad Centroccidental "Lisandro Alvarado" Decanato de Ciencias y Tecnología Departamento de

Universidad Centroccidental Lisandro Alvarado Decanato de Ciencias y Tecnología Departamento de Universidad Centroccidental "Lisandro Alvarado" Decanato de Ciencias y Tecnología Departamento de PROGRAMA INSTRUCCIONAL PROGRAMA: INGENIERÍA EN INFORMATICA DEPARTAMENTO: SISTEMAS ASIGNATURA: PROGRAMACIÓN

Más detalles

ESTRUCTURA DE DATOS. ABB Arboles de Búsqueda Binaria

ESTRUCTURA DE DATOS. ABB Arboles de Búsqueda Binaria ESTRUCTURA DE DATOS ABB Arboles de Búsqueda Binaria ÁRBOLES BINARIOS Hasta ahora nos hemos dedicado a estudiar TAD que de una u otra forma eran de naturaleza lineal, o unidimensional. En los tipos abstractos

Más detalles

Algoritmos y estructuras de datos

Algoritmos y estructuras de datos Algoritmos y estructuras de datos Dr. Eduardo A. Rodríguez Tello Laboratorio de Tecnologías de Información Cinvestav Tamaulipas ertello@tamps.cinvestav.mx Cursos de inducción a la MCC Cinvestav Tamaulipas

Más detalles

Colas deprioridad y heaps

Colas deprioridad y heaps Colas deprioridad y heaps Colas de prioridad Numerosas aplicaciones Sistemas operativos, algoritmos de scheduling, gestión de colas en cualquier ambiente, etc. La prioridad en general la expresamos con

Más detalles

EDA. Tema 8 Colas de Prioridad: Heaps

EDA. Tema 8 Colas de Prioridad: Heaps EDA. Tema 8 Colas de Prioridad: Heaps Natividad Prieto Sáez. DSIC EDA, T-8. Curso 02/03. N.Prieto p.1/55 Objetivos Estudio de las definiciones asociadas a las Colas de Prioridad: Especificación: operaciones

Más detalles

Universidad Tecnológica Nacional Facultad Regional Buenos Aires. Gestión de Datos. Árboles

Universidad Tecnológica Nacional Facultad Regional Buenos Aires. Gestión de Datos. Árboles Universidad Tecnológica Nacional Facultad Regional Buenos Aires Gestión de Datos Árboles Ing. Enrique Reinosa Leandro R. Barbagallo Septiembre 2007 Índice Índice... 2 Introducción... 3 Formalización...

Más detalles

Diseño de Conjuntos y Diccionarios

Diseño de Conjuntos y Diccionarios Diseño de Conjuntos y Diccionarios Representación de Conjuntos y Diccionarios TAD Diccionario(clave, significado) Observadores básicos def?: clave c x dicc(clave, significado) d bool obtener: clave c dicc(clave,

Más detalles

Árboles RN Montículos

Árboles RN Montículos Árboles RN Montículos Estructuras de Datos Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Árbol AVL Árbol AVL Balanceo cuatro posibilidades que requieren rotación

Más detalles

TEMA 3. Árboles. Objetivos. Contenidos. Bibliografía. Básica

TEMA 3. Árboles. Objetivos. Contenidos. Bibliografía. Básica TEMA 3. Árboles Objetivos En este tema se estudia una de las estructuras de datos no lineal más importante en computación, el árbol. Comenzaremos introduciendo la terminología asociada a los árboles y

Más detalles

Guía práctica de estudio 07. Estructuras de datos lineales: Lista simple y lista circular.

Guía práctica de estudio 07. Estructuras de datos lineales: Lista simple y lista circular. Guía práctica de estudio 07. Estructuras de datos lineales: Lista simple y lista circular. Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez

Más detalles

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo.

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo. Análisis de Algoritmos Ingeniería Informática, EPS-UAM Información general Organización del curso: 13-15 (mínimo-máximo) semanas docentes: 30-33 clases teóricas. 9-12 clases de problemas 26-30 clases prácticas

Más detalles

La máxima distancia entre dos nodos de un árbol está dada por alguna de las 3 siguientes: La máxima distancia entre dos nodos del subárbol izquierdo.

La máxima distancia entre dos nodos de un árbol está dada por alguna de las 3 siguientes: La máxima distancia entre dos nodos del subárbol izquierdo. Dado un árbol binario cualquiera, calcular la máxima distancia entre dos nodos. El algoritmo debe funcionar en orden de complejidad, siendo n la cantidad de nodos. Idea del algoritmo: La máxima distancia

Más detalles

Ejercicios del Tema 3 Estructuras jerárquicas: Árboles

Ejercicios del Tema 3 Estructuras jerárquicas: Árboles ALGORITMOS Y ESTRUCTURAS DE DATOS II Ingeniería Técnica en Informática de Gestión Ingeniería Técnica en Informática de Sistemas Ejercicios del Tema 3 Estructuras jeráruicas: Árboles Árboles n-arios 1.

Más detalles

Árboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores

Árboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores Árboles Cursos Propedéuticos 2015 Dr. René Cumplido M. en C. Luis Rodríguez Flores Contenido de la sección Introducción Árbol genérico Definición y representación Árboles binarios Definición, implementación,

Más detalles

Fibonacci Heaps. Fabiola Di Bartolo. Universidad Simón Boĺıvar

Fibonacci Heaps. Fabiola Di Bartolo. Universidad Simón Boĺıvar Estructura Universidad Simón Boĺıvar Estructura 1 Introducción Heaps 2 Estructura 3 4 5 6 7 Binary Heaps Introducción Heaps Estructura Arbol binario casi completo: Todos los niveles deben estar llenos,

Más detalles

Estructuras de datos Listas y árboles

Estructuras de datos Listas y árboles Estructuras de datos Listas y árboles Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Listas y árboles p. 1 Listas Listas son estructuras un poco más avanzadas que puros arreglos, como

Más detalles

Tema 4. Estructuras no lineales de datos: árboles

Tema 4. Estructuras no lineales de datos: árboles Fundamentos de Programación II Tema 4. Estructuras no lineales de datos: árboles Luís Rodríguez Baena (luis.rodriguez@upsam.net) Universidad Pontificia de Salamanca (campus Madrid) Escuela Superior de

Más detalles

Árboles. Un grafo no dirigido es un árbol si y sólo si existe una ruta unica simple entre cualquiera dos de sus vértices.

Árboles. Un grafo no dirigido es un árbol si y sólo si existe una ruta unica simple entre cualquiera dos de sus vértices. ÁRBOLES Árboles Un grafo conectado que no contiene circuitos simples. Utilizados desde 1857, por el matemático Ingles Arthur Cayley para contar ciertos tipos de componentes químicos. Un árbol es un grafo

Más detalles

Definición de árbol. Árboles

Definición de árbol. Árboles ÁRBOLES Árboles * Definición de árbol * Formas de representación * Nomenclatura sobre árboles * Árboles binarios * Declaración de árbol binario * Recorridos sobre árboles binarios * Construcción de un

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO Introducción Un árbol es una estructura no lineal en la que cada nodo puede apuntar a uno o varios nodos. A B C D E F G H I J K Clasificación con respecto a su relación: Nodo hijo: cualquiera de los nodos

Más detalles

ESTRUCTURAS DE DATOS Y ALGORITMOS

ESTRUCTURAS DE DATOS Y ALGORITMOS ESTRUCTURAS DE DATOS Y ALGORITMOS CURSO 2009 PRÁCTICO 8 Nota: al igual que en los prácticos 6 y 7, en los problemas que siguen se usarán los tipos lista y árbol binario, como tipos abstractos, cada uno

Más detalles

Un árbol binario T se define como un conjunto finito de elementos, llamados nodos, de forma que:

Un árbol binario T se define como un conjunto finito de elementos, llamados nodos, de forma que: Instituto Universitario de Tecnología Industrial Rodolfo Loero Arismendi I.U.T.I.R.L.A. ÁRBOLES Sección 3DA Asignatura: Estructura de Datos Lenguaje (C). Ciudad Bolívar _ abril_ 2006. Introducción El siguiente

Más detalles

Capítulo 8. Árboles. Continuar

Capítulo 8. Árboles. Continuar Capítulo 8. Árboles Continuar Introducción Uno de los problemas principales para el tratamiento de los grafos es que no guardan una estructura establecida y que no respetan reglas, ya que la relación entre

Más detalles

Árboles binarios. Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

Árboles binarios. Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile Árboles binarios Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl Árbol: definición v Árbol (del latín arbor oris): Planta perenne,

Más detalles

Árboles y esquemas algorítmicos. Tema III

Árboles y esquemas algorítmicos. Tema III Árboles y esquemas algorítmicos Tema III Bibliografía Tema III (lecciones 15 a 22) del libro Campos Laclaustra, J.: Estructuras de Datos y Algoritmos, Prensas Universitarias de Zaragoza, Colección Textos

Más detalles

Listas Posicionales. Listas posicionales

Listas Posicionales. Listas posicionales Listas Posicionales Definición: Una lista posicional es una colección de elementos homogéneos, con una relación lineal entre ellos, en la que se puede acceder a los elementos mediante su posición. Se puede

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 3. Estructuras de Almacenamiento. Básicas. Definición y Manejo.

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 3. Estructuras de Almacenamiento. Básicas. Definición y Manejo. FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 3. Estructuras de Almacenamiento Básicas. Definición y Manejo. 1.- Búsqueda de Información. Definición de Clave. 2.- Definición y Manejo

Más detalles

Teoría de Algoritmos 2 o curso de Ingeniería Informática

Teoría de Algoritmos 2 o curso de Ingeniería Informática Teoría de Algoritmos 2 o curso de Ingeniería Informática José Luis Verdegay Departamento de Ciencias de la Computación e Inteligencia Artificial http://decsai.ugr.es/ verdegay Horarios y duración de la

Más detalles

Temario. Tema 5. Estructuras de Datos no Lineales. 5.1 Árboles Binarios 5.2 Árboles n-arios

Temario. Tema 5. Estructuras de Datos no Lineales. 5.1 Árboles Binarios 5.2 Árboles n-arios Temario 5.1 Árboles Binarios 5.2 Árboles n-arios Especificación Utilización Representación Enlazada 5.3 Árboles Binarios de Búsqueda 5.4 Árboles Parcialmente Ordenados 1 Árbol n-ario: O bien es el conjunto

Más detalles

Contenido PARTE II: ESTRUCTURAS DE DATOS AVANZADAS

Contenido PARTE II: ESTRUCTURAS DE DATOS AVANZADAS Contenido PARTE II: ESTRUCTURAS DE DATOS AVANZADAS TEMA 4. - La Estructura de datos Árbol 4.1. Árboles, definiciones 4.2 Árboles binarios y su representación 4.3 Operaciones básicas de un árbol binario

Más detalles

Estructura de datos y de la información Boletín de problemas - Tema 10

Estructura de datos y de la información Boletín de problemas - Tema 10 Estructura de datos y de la información Boletín de problemas - Tema 10 1. En el caso de que sea posible, dar un ejemplo de los siguientes puntos. Si no, explicar por qué no lo es. Considerar un valor genérico

Más detalles

Análisis amortizado El plan:

Análisis amortizado El plan: Análisis amortizado El plan: Conceptos básicos: Método agregado Método contable Método potencial Primer ejemplo: análisis de tablas hash dinámicas Montículos agregables (binomiales y de Fibonacci) Estructuras

Más detalles

6. El TDA Lista Implementación con listas enlazadas. es de tipo genérico T. Pueden existir elementos repetidos (a diferencia de los conjuntos).

6. El TDA Lista Implementación con listas enlazadas. es de tipo genérico T. Pueden existir elementos repetidos (a diferencia de los conjuntos). 6. El TDA Lista 6.1. Definición 6.2. Operaciones del TDA 6.3. Implementación con vectores 6.4. Implementación con listas enlazadas 6.5. Comparativa Bibliografía: -Weiss - Aho, Hopcroft y Ullman 6.1. Definición

Más detalles

Programación Estructuras Arborescentes

Programación Estructuras Arborescentes Programación 2 4 - Estructuras Arborescentes 1 Definición La recursión puede ser utilizada para la definición de estructuras realmente sofisticadas. Una estructura árbol (árbol general o finitario) con

Más detalles

El TAD Árbol. El TAD Árbol

El TAD Árbol. El TAD Árbol Objetivos! Presentar el árbol como estructura de datos jerárquica! Estudiar diferentes variantes de árboles, tanto en su especificación como en su implementación Contenidos 3.1 Concepto, definiciones y

Más detalles

Tema 08: TAD Árbol. M. en C. Edgardo Adrián Franco Martínez edgardoadrianfrancom

Tema 08: TAD Árbol. M. en C. Edgardo Adrián Franco Martínez edgardoadrianfrancom Tema 08: TAD Árbol M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Descripción del TAD Árbol Especificación

Más detalles

Introducción a los árboles. Lección 11

Introducción a los árboles. Lección 11 Introducción a los árboles Lección 11 Árbol: Conjunto de elementos de un mismo tipo, denominados nodos, que pueden representarse en un grafo no orientado, conexo y acíclico, en el que existe un vértice

Más detalles

ELO320 Estructuras de Datos y Algoritmos. Arboles Binarios. Tomás Arredondo Vidal

ELO320 Estructuras de Datos y Algoritmos. Arboles Binarios. Tomás Arredondo Vidal ELO320 Estructuras de Datos y Algoritmos Arboles Binarios Tomás Arredondo Vidal Este material está basado en: Robert Sedgewick, "Algorithms in C", (third edition), Addison-Wesley, 2001 Thomas Cormen et

Más detalles

Tema 14: ÁRBOLES Algoritmos y estructuras de datos I - Tema 14 1

Tema 14: ÁRBOLES Algoritmos y estructuras de datos I - Tema 14 1 Tema 14: ÁRBOLES Estructura Árbol Definición: Una estructura de árbol con tipo base Valor es: (i) Bien la estructura vacía. (ii) Un conjunto finito de uno o más nodos, tal que existe un nodo especial,

Más detalles

Introducción a Árboles Árboles Binarios

Introducción a Árboles Árboles Binarios Introducción a Árboles Árboles Binarios Estructuras de Datos Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Introducción a Árboles Estructuras hasta ahora Estructuras

Más detalles

Análisis y Complejidad de Algoritmos. Arboles Rojinegros. Arturo Díaz Pérez

Análisis y Complejidad de Algoritmos. Arboles Rojinegros. Arturo Díaz Pérez nálisis y omplejidad de lgoritmos rboles Rojinegros rturo íaz Pérez RedlackTree-1 efinición Los árboles rojinegros son estructuras basadas en árboles binarios balanceados. Un árbol rojinegro es un árbol

Más detalles

Planificaciones Teoría de Algoritmos I. Docente responsable: WACHENCHAUZER ROSA GRACIELA. 1 de 5

Planificaciones Teoría de Algoritmos I. Docente responsable: WACHENCHAUZER ROSA GRACIELA. 1 de 5 Planificaciones 7529 - Teoría de Algoritmos I Docente responsable: WACHENCHAUZER ROSA GRACIELA 1 de 5 OBJETIVOS Que el alumno - adquiera las herramientas teóricas y prácticas para la evaluación del costo

Más detalles

Conceptos de Algoritmos, Datos y Programas

Conceptos de Algoritmos, Datos y Programas Conceptos de Algoritmos, Datos y Programas Año 2015 Carreras: Lic. en Informática P2015 Lic. en Sistemas P2015 APU P2015 Año: 1 Duración: Cuatrimestral Coordinador: Ing. Armando De Giusti Profesores: Esp.

Más detalles

Capítulo 4: Grafos Clase 4: Árboles

Capítulo 4: Grafos Clase 4: Árboles Capítulo 4: Grafos Clase 4: Árboles Matemática Discreta - CC3101 Profesor: Pablo Barceló P. Barceló Matemática Discreta - Cap. 4: Grafos 1 / 12 Árboles Los árboles son una clase particular de grafos que

Más detalles

4.5 Árboles AVL (Adelson-Velskii y Landis) Inserción y extracción en árboles AVL

4.5 Árboles AVL (Adelson-Velskii y Landis) Inserción y extracción en árboles AVL 4.5 Árboles AVL (Adelson-Velskii y Landis) Árbol binario de búsqueda que verifica que las alturas de los subárboles derecho e izquierdo de cada nodo sólo pueden diferir, a lo sumo, en 1 lo que garantiza

Más detalles

Estructura de Datos. Árboles. Árboles. Primer Semestre, 2010 ÍNDICE DE CONTENIDOS

Estructura de Datos. Árboles. Árboles. Primer Semestre, 2010 ÍNDICE DE CONTENIDOS Estructura de Datos Árboles Prof.: Mauricio Solar Prof.: Lorna Figueroa Primer Semestre, 2010 1 ÍNDIE DE ONTENIDOS oncepto de árbol. Terminología básica Árboles generales Árboles inarios () Árboles inarios

Más detalles

Planificaciones Algoritmos y Programación II. Docente responsable: WACHENCHAUZER ROSA GRACIELA. 1 de 5

Planificaciones Algoritmos y Programación II. Docente responsable: WACHENCHAUZER ROSA GRACIELA. 1 de 5 Planificaciones 7541 - Algoritmos y Programación II Docente responsable: WACHENCHAUZER ROSA GRACIELA 1 de 5 OBJETIVOS Introducir los conceptos de diseño de algoritmos y de estructuras de datos, utilizando

Más detalles

Ejercicio 2 Considere la representación para Lista de Naturales y Árbol Binario de Naturales de la Figura 1.

Ejercicio 2 Considere la representación para Lista de Naturales y Árbol Binario de Naturales de la Figura 1. Ejercicios Resueltos del Práctico 4 Ejercicio 2 Considere la representación para Lista de Naturales y Árbol Binario de Naturales de la Figura 1. 1 2 struct NodoLista { 3 int elem ; 4 NodoLista * sig ;

Más detalles

Árboles. Alonso Ramírez Manzanares Computación y Algoritmos Friday, March 17, 17

Árboles. Alonso Ramírez Manzanares Computación y Algoritmos Friday, March 17, 17 Árboles 1 Grafos Un grafo es un conjunto de nodos atados por un conjunto de ejes que conectan pares de nodos distintos (con un eje conectando un par de nodos.) Árboles Un árbol es una colección no-vacía

Más detalles

UNIVERSIDAD CATÓLICA DEL NORTE PROGRAMA DE ESTUDIOS IDENTIFICACIÓN DE LA ASIGNATURA. Nombre: Estructuras de Datos y Archivos

UNIVERSIDAD CATÓLICA DEL NORTE PROGRAMA DE ESTUDIOS IDENTIFICACIÓN DE LA ASIGNATURA. Nombre: Estructuras de Datos y Archivos 1 UNIVERSIDAD CATÓLICA DEL NORTE PROGRAMA DE ESTUDIOS IDENTIFICACIÓN DE LA ASIGNATURA Nombre: Estructuras de Datos y Archivos Código: CC- 672 Fecha Actualización: 30/07/2008 Unidad Responsable: Departamento

Más detalles

Estructuras de datos: Conjuntos disjuntos

Estructuras de datos: Conjuntos disjuntos Estructuras de datos: Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge sjorge@udc.es Referencias bibliográficas G. Brassard y T. Bratley. Estructura de datos. En Fundamentos

Más detalles

FORMATO DE CONTENIDO DE CURSO PLANEACIÓN DEL CONTENIDO DE CURSO. : Informática para Ingenieros I CÓDIGO :

FORMATO DE CONTENIDO DE CURSO PLANEACIÓN DEL CONTENIDO DE CURSO. : Informática para Ingenieros I CÓDIGO : PÁGINA: 1 de 5 FACULTAD DE INGENIERIA PROGRAMA DE INGENIERIA AGROINDUSTRIAL PLANEACIÓN DEL CONTENIDO DE CURSO 1. IDENTIFICACIÓN DEL CURSO NOMBRE : Informática para Ingenieros I CÓDIGO : 701150 SEMESTRE

Más detalles

PRÁCTICA No. 9 RECORRIDOS EN ÁRBOLES BINARIOS

PRÁCTICA No. 9 RECORRIDOS EN ÁRBOLES BINARIOS INSTITUTO POLITÉCNICO NACIONAL SECRETARIA ACADÉMICA DIRECCIÓN DE EDUCACIÓN SUPERIOR ESIME CULHUACAN NOMBRE ALUMNO: 1. Objetivo PRÁCTICA No. 9 RECORRIDOS EN ÁRBOLES BINARIOS El alumno comprenderá y aplicara

Más detalles

Lenguajes III Análisis y Diseño de Algoritmos

Lenguajes III Análisis y Diseño de Algoritmos Lenguajes III Análisis y Diseño de Algoritmos Andrés Becerra Sandoval Código: CC060 Créditos: 3 Prerequisitos: Desarrollo Formal de programas Naturaleza del Curso El curso argumenta la necesidad de considerar

Más detalles

Clase 32: Árbol balanceado AVL

Clase 32: Árbol balanceado AVL Clase 32: Árbol balanceado AVL http://computacion.cs.cinvestav.mx/~efranco @efranco_escom efranco.docencia@gmail.com (Prof. Edgardo A. Franco) 1 Contenido Problema de los árboles binarios de búsqueda Variantes

Más detalles

Ampliación de Estructuras de Datos

Ampliación de Estructuras de Datos Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios

Más detalles

Segundo parcial de Programación 2

Segundo parcial de Programación 2 Generalidades: Segundo parcial de Programación 2 a. La prueba es individual y sin material. b. La duración es 3hs. c. Sólo se contestan dudas acerca de la letra. 8 de Julio de 2016 d. Escriba las hojas

Más detalles

GUÍA DOCENTE Estructuras de Datos

GUÍA DOCENTE Estructuras de Datos GUÍA DOCENTE 2016-2017 Estructuras de Datos 1. Denominación de la asignatura: Estructuras de Datos Titulación Grado en Ingeniería Informática Código 6359 2. Materia o módulo a la que pertenece la asignatura:

Más detalles

Capítulo 6. ÁRBOLES.

Capítulo 6. ÁRBOLES. 67 Capítulo 6. ÁRBOLES. 6.1 Árboles binarios. Un árbol binario es un conjunto finito de elementos, el cual está vacío o dividido en tres subconjuntos separados: El primer subconjunto contiene un elemento

Más detalles

ÁRBOLES BINARIOS DE BÚSQUEDA (ABB)

ÁRBOLES BINARIOS DE BÚSQUEDA (ABB) ÁRBOLES BINARIOS DE BÚSQUEDA (ABB) INTRODUCCIÓN - Un árbol binario de búsqueda (ABB) es un árbol binario con la propiedad de que todos los elementos almacenados en el subárbol izquierdo de cualquier nodo

Más detalles

Análisis en el caso peor El plan:

Análisis en el caso peor El plan: Análisis en el caso peor El plan: Repaso de conceptos Montículos y el problema de ordenación Árboles rojinegros Técnicas Avanzadas de Programación - Javier Campos 39 TAD Diccionario Tipo Abstracto de Datos

Más detalles

Programación TADs Arboles

Programación TADs Arboles Programación 2 10 - TADs Arboles 1 Arboles Una estructura árbol (árbol general) con tipo base T es, 1. O bien la estructura vacía 2. O bien un nodo de tipo T, llamado raíz del árbol, junto con un número

Más detalles

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I Tema 4: Gramáticas independientes del contexto Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación.

Más detalles

Tema 5. Tipos Abstractos de Datos

Tema 5. Tipos Abstractos de Datos . E.U.Politécnica. I.T.Industrial (Electricidad) Tema 5. Tipos Abstractos de Datos. E.U. Politécnica Curso 2004-2005 Departamento Lenguajes y Ciencias de la Computación. Universidad de Málaga José Luis

Más detalles

Métodos de Ordenamiento. Unidad VI: Estructura de datos

Métodos de Ordenamiento. Unidad VI: Estructura de datos Métodos de Ordenamiento Unidad VI: Estructura de datos Concepto de ordenación La ordenación de los datos consiste en disponer o clasificar un conjunto de datos (o una estructura) en algún determinado orden

Más detalles

Carlos Delgado Kloos Mª Carmen Fernández Panadero Raquel M. Crespo García Ingeniería Telemática Univ. Carlos III de Madrid

Carlos Delgado Kloos Mª Carmen Fernández Panadero Raquel M. Crespo García Ingeniería Telemática Univ. Carlos III de Madrid Árboles Carlos Delgado Kloos Mª Carmen Fernández Panadero Raquel M. Crespo García Ingeniería Telemática Univ. Carlos III de Madrid cdk@it.uc3m.es Java: Árboles / 1 Índice Concepto Definición no recursiva

Más detalles