ASIGNATURA: (TIS-106) Estructuras de Datos II DOCENTE: Ing. Freddy Melgar Algarañaz

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

Download "ASIGNATURA: (TIS-106) Estructuras de Datos II DOCENTE: Ing. Freddy Melgar Algarañaz"

Transcripción

1 TEMA 1. Árboles Generalizados Son estructuras de datos no lineales, o también denominadas estructuras multienlazadas. El árbol es una estructura de datos fundamental en informática, muy utilizada en todos sus campos, porque se adapta a la representación natural de informaciones homogéneas organizadas y de una gran comodidad y rapidez de manipulación. Esta estructura se encuentra en todos los dominios (campos) de la informática, desde la pura algorítmica (métodos de clasificación y búsqueda ) a la compilación (árboles sintácticos para representar las expresiones o producciones posibles de un lenguaje) o incluso los dominios de la inteligencia artificial (árboles de juegos, árboles de decisiones, de resolución, etc.) Las estructuras tipo árbol se usan principalmente para representar datos con una relación jerárquica entre sus elementos, como son árboles genealógicos, tablas, etc. Un árbol A es un conjunto finito de uno o más nodos, tales que: 1. Existe un nodo especial denominado RAIZ (v1) del árbol. 2. Los nodos restantes (v2, v3,, vn) se dividen en m >= 0 conjuntos disjuntos denominado A1, A2,, Am, cada uno de los cuales es, a su vez, un árbol. Estos árboles se llaman subárboles del RAIZ. La definición de árbol implica una estructura recursiva. Esto es, la definición del árbol se refiere a otros árboles. Un árbol con ningún nodo es un árbol nulo; no tiene raíz. La figura siguiente muestra un árbol en el que se ha rotulado cada nodo con una letra dentro de un círculo. Esta es una notación típica para dibujar árboles. UAB Ingeniería de Sistemas - 1 -

2 TERMINOLOGÍA Y REPRESENTACIÓN DE UN ÁRBOL GENERAL La representación y terminología de los árboles se realiza con las típicas notaciones de las relaciones familiares en los árboles genealógicos: padre, hijo, hermano, ascendente, descendiente, etc. Sea el árbol de la figura: Las definiciones a tener en cuenta son: Raíz del árbol. Todos los árboles que no están vacíos tienen un único nodo raíz. Todos los demás elementos o nodos se derivan o descienden de él. El nodo raíz no tiene padre, es decir, no es el hijo de ningún elemento. Nodo, son los vértices o elementos del árbol. Nodo terminal u hoja (leaf node) es aquel nodo que no contiene ningún subárbol (los nodos terminales u hojas de la figura anterior son: E, F, K, L, H, I, J). A cada nodo que no es hoja se asocia uno o varios subárboles llamados descendientes o hijos. De igual forma, cada nodo tiene asociado un antecesor o ascendiente llamado padre. Los nodos de un mismo padre se llaman hermanos. Los nodos con uno o dos subárboles no son hojas ni raíz se llaman nodos interiores o internos. Una colección de dos o más árboles se llama bosque (forest). Todos los nodos tienen un solo padre excepto el raíz que no tiene padre. Se denomina camino el enlace entre dos nodos consecutivos y rama es un camino que termina en una hoja. Cada nodo tiene asociado un número de nivel que se determina por la longitud del camino desde el raíz al nodo específico. Por ejemplo, en el árbol de la figura anterior: Nivel 0 A Nivel 1 B, C, D Nivel 2 E, F, G, H, I, J Nivel 3 K, L La altura o profundidad de un árbol es el número máximo de nodos de una rama. Equivale al nivel más alto de los nodos más uno. El peso de un árbol es el número de nodos terminales. Del árbol de la figura anterior, la altura es 4, y el peso es 7. UAB Ingeniería de Sistemas - 2 -

3 Fundamentos y terminología básica Hasta ahora hemos visto estructuras de datos lineales, es decir, los datos estaban estructurados en forma de secuencia. Sin embargo, las relaciones entre los objetos no siempre son tan simples como para ser representadas mediante secuencias (incluso, en muchas ocasiones, es conveniente que no sea así), sino que la complejidad de las relaciones entre los elementos puede requerir otro tipo de estructura. En esas situaciones se pasaría a tener estructuras de datos no lineales. Este es el caso de la estructura de datos conocida como árbol. Los árboles establecen una estructura jerárquica entre los objetos. Los árboles genealógicos y los organigramas son ejemplos comunes de árboles. Un árbol es una colección de elementos llamados nodos, uno de los cuales se distingue del resto como raíz, junto con una relación que impone una estructura jerárquica entre los nodos. Formalmente, un árbol se puede definir de manera recursiva como sigue: Definición: una estructura de árbol con tipo base T es: (i) Bien la estructura vacía. (ii) Un conjunto finito de uno o más nodos, tal que existe un nodo especial, llamado nodo raíz, y donde los restantes nodos están separados en n >= 0 conjuntos disjuntos, cada uno de los cuales es a su vez un árbol (llamados subárboles del nodo raíz). La definición implica que cada nodo del árbol es raíz de algún subárbol contenido en el árbol principal. El índice de un libro es un buen ejemplo de representación en forma de árbol. Ejemplos de estructuras arborescentes: Antes de continuar avanzando en las características y propiedades de los árboles, veamos algunos términos importantes asociados con el concepto de árbol: Grado de un nodo: es el número de subárboles que tienen como raíz ese nodo (cuelgan del nodo). Nodo terminal u hoja: nodo con grado 0. No tiene subárboles. Grado de un árbol: grado máximo de los nodos de un árbol. Hijos de un nodo: nodos que dependen directamente de ese nodo, es decir, las raíces de sus subárboles. Padre de un nodo: antecesor directo de un nodo del cual depende directamente. Nodos hermanos: nodos hijos del mismo nodo padre. UAB Ingeniería de Sistemas - 3 -

4 Camino: sucesión de nodos del árbol: n(1), n(2),.. n(k), tal que n(i) es el padre de n(i+1). Antecesores de un nodo: todos los nodos en el camino desde la raíz del árbol hasta ese nodo. Longitud de camino de un árbol: suma de las longitudes de los caminos a todos sus componentes. Bosque: conjunto de n >= 0 árboles disjuntos. La representación de un árbol general dependerá de su grado, es decir, del número de relaciones máximo que puede tener un nodo del árbol. Resulta más simple la representación y manipulación de una estructura árbol cuando el grado de éste es fijo e invariable. Por esa razón, para introducir los aspectos más concretos de la manipulación de árboles nos vamos a centrar en un tipo particular de los mismos, los llamados árboles binarios o de grado dos. Definiciones En términos matemáticos, un árbol es cualquier conjunto de puntos, llamados vértices, y cualquier conjunto de pares de distintos vértices, llamados lados o ramas, tales que : 1. Hay una secuencia de ramas, llamada paso de cualquier vértice a cualquier otro vértice. 2. No hay lazos, o sea, que no hay pasos que comiencen en un vértice y puedan volver al mismo vértice. Llamaremos a un árbol de tal generalidad, un árbol libre. Los árboles que tienen un vértice o nodo especial, llamado raíz, reciben el nombre de árboles enraizados. La particularidad del nodo raíz es que no puede ser hijo de otro nodo. Un árbol A es un conjunto finito de uno o más nodos tales que : 1. Existe un nodo especialmente designado y denominado RAIZ(v1) del árbol. 2. Los nodos restantes (v2, v3,..., vn) se dividen en m >= 0 conjuntos disjuntos denominados A1, A2,..., Am, cada uno de los cuales es a su vez, un árbol. Estos árboles se llaman subárboles del RAIZ. Observar la naturaleza recursiva de la definición de árbol. Un árbol es una estructura de datos no lineal. Las estructuras de datos lineales se caracterizan por que a cada elemento le corresponde no más que un elemento siguiente. En las estructuras de datos no lineales, como el árbol, un elemento puede tener diferentes "siguientes elementos", introduciendo una estructura de bifurcación, también conocidas como estructuras multi enlazadas. Un árbol es un conjunto finito de elementos no vacío en el cual un elemento se denomina raíz y los restantes se dividen en m >= 0 subconjuntos separados, cada uno de los cuales es por sí mismo un árbol. Cada elemento en un árbol se denomina nodo del árbol. Un árbol ordenado se define como un árbol en el que los subárboles de cada nodo forman un conjunto ordenado. En un árbol ordenado podemos hablar del primero, segundo o último hijo de un nodo particular. El primer hijo de un nodo, en un árbol ordenado, se denomina con frecuencia el hijo más viejo de este nodo y el último hijo, se denomina el hijo más joven. UAB Ingeniería de Sistemas - 4 -

5 Usos Un árbol desordenado se define como un árbol en el que los subárboles de cada nodo no guardan orden alguno. No existe forma, en este tipo de árboles, determinar cual es el primero, segundo o último hijo. La estructura de datos árboles es para mostrar datos jerárquicos. Veamos algunos ejemplos donde la estructura de datos árbol puede ser muy útil: 1. Los sistemas de archivos de los sistemas operativos, compuestos por jerarquías de directorios y archivos. 2. La jerarquía de clases en los lenguajes orientados a objetos. 3. La jerarquía de países, provincias, departamentos y municipios que organiza al poder político de una república. Terminología 1. Nodo (Node) También llamado vértice o elemento del árbol. Es el contenedor de los datos y los enlaces a sus hijos y a su padre. 2. Nodo Raiz (Root Node) Es el nodo donde comienza el árbol. Cada árbol tiene solamente un nodo raíz, desde el cual cuelgan todos sus descendientes. 3. Nodo Rama (Branch Node) También llamado nodo interior o interno. Es un nodo cualquiera que puede tener hijos, aunque en este preciso momento no los tenga. Es todo nodo que no es raíz o hoja. 4. Nodo Hoja (Leaf Node) También llamado nodo terminal. Es un nodo cualquiera que no puede tener hijos y nunca los podrá tener. Es un nodo que no tiene ningún subárbol. 5. Nodo Hermano (Sibling Node) Es un nodo que es hijo del mismo padre. 6. Camino (Path) Son los enlaces que van desde un nodo hasta otro nodo. 7. Rama (Branch) Es un camino que termina en una hoja. 8. Nivel del Nodo (Node Level) Es la longitud del camino desde el nodo raíz al nodo específico mas uno. 9. Peso del Arbol (Tree Wheight) Es el número de nodos terminales 10. Arbol Vacio (Empty Tree) Es un árbol que en este momento no tiene ningún nodo. De existir solo un nodo, ese nodo es el nodo raíz. 11. Grado de un Nodo (Node Degree) Es el número de subárboles que tiene un nodo. Los nodos hoja tienen grado cero. 12. Grado de un Arbol (Tree Degree) El grado máximo de todos los nodos del árbol. 13. Ancestros del Nodo (Ancestors) Son todos los nodos del árbol en el camino que va desde el raíz hasta el nodo específico. Enumeración de nodos Necesidades Muchas veces existe la necesidad de: 1. Encontrar un nodo en un árbol, cuando se ignora si existe o no el árbol. 2. Recuperar todos los nodos de un árbol. UAB Ingeniería de Sistemas - 5 -

6 Las soluciones a estas necesidades están regidas por la idea de transformar una estructura de datos que es básicamente no lineal en una lineal. Obviamente esta linealidad se logra sin alterar la estructura básica del árbol y visitando todos los nodos del árbol, una sola vez a cada uno, en las formas básicas. A continuación siguen las formas básicas de recorrer, navegar o enumerar los nodos de un árbol, las que veremos a través del siguiente árbol, el que representa jerárquicamente, por ejemplo, las ciudades donde una empresa tiene sus oficinas. Enumeraciones Básicas A Lo Ancho (Breadth First) Se usa el método Enumeration breadthfirstenumeration(). UAB Ingeniería de Sistemas - 6 -

7 En esta navegación se debe utilizar una estructura de datos auxiliar, como ser una lista, para identificar los nodos que ya han sido visitados. En Profundidad (Depth First) Se usa el método Enumeration depthfirstenumeration(). En este tipo de navegación no necesito de una estructura de datos auxiliar para navegar el árbol. Toda la información necesaria esta disponible en los nodos. El dibujo esta muy simplificado, ya que muestra una travesía a través de hermanos en forma directa, cuando en la realidad no hay un puntero que permite navegar de hermano a hermano. Lo que ocurre es que para ir al siguiente hermano se debe volver al padre y allí si seguir al siguiente hermano. RESUMEN Un árbol se define como una colección de nodos organizados en forma recursiva. Cuando hay 0 nodos se dice que el árbol está vacío, en caso contrario el árbol consiste en un nodo denominado raíz, el cual tiene 0 o más referencias a otros árboles, conocidos como subárboles. Las raíces de los subárboles se denominan hijos de la raíz, y consecuentemente la raíz se denomina padre de las raíces de sus subárboles. Una visión gráfica de esta definición recursiva se muestra en la siguiente figura: UAB Ingeniería de Sistemas - 7 -

8 Los nodos que no poseen hijos se denominan hojas. Dos nodos que tienen el padre en común se denominan hermanos. Un camino entre un nodo n1 y un nodo nk está definido como la secuencia de nodos n1, n2,..., nk tal que ni es padre de ni+1, 1 <= i < k. El largo del camino es el número de referencias que componen el camino, que para el ejemplo son k-1. Existe un camino desde cada nodo del árbol a sí mismo y es de largo 0. Nótese que en un árbol existe un único camino desde la raíz hasta cualquier otro nodo del árbol. A partir del concepto de camino se definen los conceptos de ancestro y descendiente: un nodo n es ancestro de un nodo m si existe un camino desde n a m; un nodo n es descendiente de un nodo m si existe un camino desde m a n. Se define la profundidad del nodo nk como el largo del camino entre la raíz del arbol y el nodo nk. Esto implica que la profundidad de la raíz es siempre 0. La altura de un nodo nk es el máximo largo de camino desde nk hasta alguna hoja. Esto implica que la altura de toda hoja es 0. La altura de un árbol es igual a la altura de la raíz, y tiene el mismo valor que la profundidad de la hoja más profunda. La altura de un árbol vacío se define como -1. La siguiente figura muestra un ejemplo de los conceptos previamente descritos: A es la raíz del árbol. A es padre de B, C y D. E y F son hermanos, puesto que ambos son hijos de B. E, J, K, L, C, P, Q, H, N y O son las hojas del árbol. El camino desde A a J es único, lo conforman los nodos A-B-F-J y es de largo 3. D es ancestro de P, y por lo tanto P es descendiente de D. L no es descendiente de C, puesto que no existe un camino desde C a L. La profundidad de C es 1, de F es 2 y de Q es 4. UAB Ingeniería de Sistemas - 8 -

9 La altura de C es 0, de F es 1 y de D es 3. La altura del árbol es 4 (largo del camino entre la raíz A y la hoja más profunda, P o Q). Los arboles representan las estructuras no lineales y dinámicas de datos más importantes en computación. Dinámicas porque las estructuras de árbol pueden cambiar durante la ejecución de un programa. No lineales, puesto que a cada elemento del árbol pueden seguirle varios elementos. Los arboles pueden ser construidos con estructuras estáticas y dinámicas. Las estáticas son arreglos, registros y conjuntos, mientras que las dinámicas están representadas por listas. La definición de árbol es la siguiente: es una estructura jerárquica aplicada sobre una colección de elementos u objetos llamados nodos; uno de los cuales es conocido como raíz. Además se crea una relación o parentesco entre los nodos dando lugar a términos como padre, hijo, hermano, antecesor, sucesor, ancestro, etc.. Formalmente se define un árbol de tipo T como una estructura homogénea que es la concatenación de un elemento de tipo T junto con un número finito de arboles disjuntos, llamados subárboles. Una forma particular de árbol puede ser la estructura vacía. La figura siguiente representa a un árbol general. Se utiliza la recursión para definir un árbol porque representa la forma más apropiada y porque además es una característica inherente de los mismos. Los arboles tienen una gran variedad de aplicaciones. Por ejemplo, se pueden utilizar para representar fórmulas matemáticas, para organizar adecuadamente la información, para construir un árbol genealógico, para el análisis de circuitos eléctricos y para numerar los capítulos y secciones de un libro. UAB Ingeniería de Sistemas - 9 -

Estructura de Datos. Estructuras de Datos no lineales : Árboles

Estructura de Datos. Estructuras de Datos no lineales : Árboles Estructura de Datos Estructuras de Datos no lineales : Árboles Definiciones de Árbol En términos matemáticos, un árbol es cualquier conjunto de puntos, llamados vértices, y cualquier conjunto de pares

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

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

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

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

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

Tema Árboles generales. 9.2 Árboles binarios 9.3 Árboles de búsqueda

Tema Árboles generales. 9.2 Árboles binarios 9.3 Árboles de búsqueda Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Tema 9. Árboles 9.1 Árboles generales 9.2 Árboles binarios 9.3 Árboles de búsqueda 9.1 Árboles generales Un árbol es

Más detalles

Matemáticas Básicas para Computación

Matemáticas Básicas para Computación Matemáticas Básicas para Computación MATEMÁTICAS BÁSICAS PARA COMPUTACIÓN 1 Sesión No. 11 Nombre: Árboles Objetivo: Al término de la sesión el participante conocerá los tipos de grafos específicamente

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

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

Á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

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

Á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

Á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

12/08/2017 AVL. Especificación sobre árboles AVL. AVL: rotaciones

12/08/2017 AVL. Especificación sobre árboles AVL. AVL: rotaciones VL Se dice que un árbol binario está balanceado si y sólo si en cada nodo las alturas de sus 2 subárboles difieren como máximo en 1. Todos los árboles perfectamente balanceados son árboles VL. Especificación

Más detalles

Definiciones: conjuntos, grafos, y árboles. Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002

Definiciones: conjuntos, grafos, y árboles. Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002 Definiciones: conjuntos, grafos, y árboles Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002 1 Conjuntos (sets) y Grafos (graphs) Un Conjunto es una colección de objetos distintos. No

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

Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos.

Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos. Matemática Discreta y Lógica 2 1. Árboles Árboles Definición 1.1 Sea G = (V, A) un grafo no dirigido. G se denomina árbol si es conexo y no contiene ciclos. Como un lazo es un ciclo de longitud 1, un árbol

Más detalles

Algoritmos y Estructuras de Datos. Guillermo Román Díez

Algoritmos y Estructuras de Datos. Guillermo Román Díez Algoritmos y Estructuras de Datos Árboles Generales y Árboles Binarios Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2015-2016 Guillermo Román, UPM AED: Introducción 1/22

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

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

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

Definición 1: Un grafo G es una terna ordenada (V(G), E(G), Ψ

Definición 1: Un grafo G es una terna ordenada (V(G), E(G), Ψ Título: Un Arbol Natural Autor: Luis R. Morera onzález Resumen En este artículo se crea un modelo para representar los números naturales mediante un grafo, el cual consiste de de un árbol binario completo

Más detalles

PROGRAMA EDUCATIVO INFORMATICA ADMINISTRATIVA

PROGRAMA EDUCATIVO INFORMATICA ADMINISTRATIVA PROGRAMA EDUCATIVO INFORMATICA ADMINISTRATIVA UNIDAD DE APRENDIZAJE ADMINISTRACION DE BASES DE DATOS Unidad de competencia III Manejar las estructuras dinámicas en memoria secundaria Arboles ELABORACION

Más detalles

Curso Básico de Computación Preliminares

Curso Básico de Computación Preliminares Curso Básico de Computación Preliminares Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) Preliminares 2010 1 / 11 1 Preliminares

Más detalles

INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS.

INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS. INDICE INTRODUCCION1 DESARROLLO2 GRAFOS (CONCEPTO).2 ARISTAS...2 VERTICES2 CAMINOS.3 CLASIFICACION DE GRAFOS...3 GRAFOS EULERIANOS.7 GRAFOS CONEXOS7 ÁRBOLES..7 BOSQUES DE ÁRBOLES...8 RECORRIDO DE UN GRAFO..8

Más detalles

Tema 6: Estructuras de datos recursivas

Tema 6: Estructuras de datos recursivas Tema 6: Estructuras de datos recursivas Índice 1 Listas jerárquicas...2 2 Árboles binarios... 4 3 Árboles genéricos...7 4 Referencias...10 1. Listas jerárquicas Las listas tienen la propiedad de la clausura

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

Curso Básico de Computación

Curso Básico de Computación CINVESTAV IPN México City 2010 1 Preliminares 1.1 Cadenas, alfabetos y lenguajes Un símbolo es un ente abstracto que no se puede definir formalmente. Letras o dígitos son ejemplos

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

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

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

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

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

Árboles n-arios. Lección 15

Árboles n-arios. Lección 15 Árboles n-arios Lección 15 Conceptos, deiciones y terminología básica Árbol: Conjunto de elementos de un mismo tipo, denominados nodos, que pueden representarse en un grafo no orientado, conexo y acíclico,

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

Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios

Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios CLASE GRAFOS Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios libros por lo que está prohibida su impresión

Más detalles

UNIDAD 9. DATOS COMPLEJOS PILAS

UNIDAD 9. DATOS COMPLEJOS PILAS UNI 9. TOS OMPLEJOS PILS Una pila es una lista de elementos en la que se pueden insertar y eliminar elementos sólo por uno de los extremos. omo consecuencia, los elementos de una pila serán eliminados

Más detalles

Estructuras Dinámicas de datos.

Estructuras Dinámicas de datos. Estructuras Dinámicas de datos. Las estructuras dinámicas de datos son estructuras que crecen a medida que ejecuta un programa. Una estructura dinámica de datos es una colección de elementos llamadas nodos

Más detalles

UNIVERSIDAD NACIONAL DE INGENIERÍA UNI-RUACS. Investigación de Operaciones

UNIVERSIDAD NACIONAL DE INGENIERÍA UNI-RUACS. Investigación de Operaciones UNIVERSIDAD NACIONAL DE INGENIERÍA UNI-RUACS Facultad de Ingeniería Industrial Investigación de Operaciones Tema: Teoría de los Grafos Elaborado por: Ing. Carlos Alberto Moreno. Docente: Ing. Pastrana

Más detalles

Matemáticas Discretas L. Enrique Sucar INAOE. Teoría de Grafos. Problema de los puentes de Königsberg [Euler]

Matemáticas Discretas L. Enrique Sucar INAOE. Teoría de Grafos. Problema de los puentes de Königsberg [Euler] Matemáticas Discretas L. Enrique Sucar INAOE Teoría de Grafos Problema de los puentes de Königsberg [Euler] Teoría de Grafos Definición y terminología Tipos de grafos Trayectorias y circuitos Isomorfismo

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

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

TEMA 5 El tipo grafo. Tipo grafo

TEMA 5 El tipo grafo. Tipo grafo TEMA 5 El tipo grafo PROGRAMACIÓN Y ESTRUCTURAS DE DATOS Tipo grafo 1. Concepto de grafo y terminología 2. Especificación algebraica. Representación de grafos.1. Recorrido en profundidad o DFS.2. Recorrido

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

Matemáticas Discretas Tc1003 Teoría de Grafos

Matemáticas Discretas Tc1003 Teoría de Grafos Definición. Sea A un grafo. A recibe el nombre de árbol sí y sólo si: A es conexo. A no contiene circuitos. Ejemplos: Definición. Sea A un árbol. Un vértice de grado 1 se llama una hoja. Un vértice de

Más detalles

Sesión 4: Teoría de Grafos

Sesión 4: Teoría de Grafos Modelos Gráficos Probabilistas L. Enrique Sucar INAOE Sesión 4: Teoría de Grafos Problema de los puentes de Königsberg [Euler] Teoría de Grafos Definición y terminología Tipos de grafos Trayectorias y

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

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Lógica y Estructuras Discretas Tutor: Antonio Rivero Cuesta Tema 5 Teoría de Grafos Conceptos Básicos Un grafo consta de: Grafo Un conjunto de nodos, Un conjunto de aristas

Más detalles

Arboles Binarios de Búsqueda en C++

Arboles Binarios de Búsqueda en C++ Arboles Binarios de Búsqueda en C++ por CCG/Mayo-2014 Tema de Arboles Binarios de Búsqueda, como un poco de teoría para su mejor entendimiento seguidamente mostrare la implementación en lenguaje de programación

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

LECCION N 08 ARBOLES. Un árbol es un grafo A que tiene un único nodo llamado raíz que:

LECCION N 08 ARBOLES. Un árbol es un grafo A que tiene un único nodo llamado raíz que: LECCION N 08 ARBOLES Los árboles son estructuras de datos útiles en muchas aplicaciones. Hay varias formas de árboles y cada una de ellas es práctica en situaciones especiales, en este capítulo vamos a

Más detalles

Clase 26. Introducción a los árboles. Árboles

Clase 26. Introducción a los árboles. Árboles Clase 26 Introducción a los árboles Árboles Árbol es el nombre que se le da a un grupo versátil de estructuras de datos. Se pueden utilizar para implementar un número de interfaces abstractas, incluida

Más detalles

A5 Introducción a la optimización en redes

A5 Introducción a la optimización en redes 48 Materials David Pujolar Morales A5 Introducción a la optimización en redes Definición 1. Grafo finito. Sea un V un conjunto no vacío con un número finito de elementos y E una familia finita de pares

Más detalles

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos

Más detalles

Árboles de Expansión Mínima. Matemática Discreta. Agustín G. Bonifacio UNSL

Árboles de Expansión Mínima. Matemática Discreta. Agustín G. Bonifacio UNSL UNSL Árboles Definiciones y Ejemplos Caracterización Un árbol T es un grafo simple que satisface lo siguiente: si v y w son vértices en T, entonces existe una trayectoria simple única de v a w. Un árbol

Más detalles

UNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.

UNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.

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

Profesor: José Miguel Rubio L.

Profesor: José Miguel Rubio L. Profesor: José Miguel Rubio L. Magíster en Ingeniería Informática Ingeniero Civil en Informática Licenciado en Ciencias de la Ingeniería Técnico en Programación Oficina: 3-20 e-mail 1: jose.rubio.l@ucv.cl

Más detalles

A) PREORDEN B) INORDEN C) POSTORDEN D) NIVELES

A) PREORDEN B) INORDEN C) POSTORDEN D) NIVELES Capitulo 5. Arboles 1. Al recorrer el siguiente árbol en se visitan más nodos para llegar al número 38. Justifique su respuesta mostrando cada uno de los recorridos. Tipo de Recorrido Recorrido A) PREORDEN

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 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

CONCEPTOS BÁSICOS. Prof. Ing. M.Sc. Fulbia Torres

CONCEPTOS BÁSICOS. Prof. Ing. M.Sc. Fulbia Torres CONCEPTOS BÁSICOS ESTRUCTURAS DE DATOS 2006 Prof. UNIDAD I CONCEPTOS BÁSICOS Datos. Información. Estructuras de Datos. Operaciones sobre una estructura. Perspectivas o niveles de datos. Implementación

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

Definiciones y ejemplos.

Definiciones y ejemplos. V. Grafos Definiciones y ejemplos. Módulo 5 DEF. Sea V un conjunto finito no vacío, y sea El par (V, E) es llamada entonces grafo dirigido en V, donde V es el conjunto de vértices o nodos y E es su conjunto

Más detalles

ASIGNATURA: (TIS-106) Estructuras de Datos II DOCENTE: Ing. Freddy Melgar Algarañaz TEMA 2. Árboles binarios

ASIGNATURA: (TIS-106) Estructuras de Datos II DOCENTE: Ing. Freddy Melgar Algarañaz TEMA 2. Árboles binarios TEMA 2. Árboles binarios Los árboles binarios constituyen un tipo particular de árboles de gran aplicación. Estos árboles se caracterizan porque no existen nodos con grado mayor a dos, es decir, un nodo

Más detalles

Tema 5 Árboles y Grafos.

Tema 5 Árboles y Grafos. Tema 5 Árboles y Grafos. Definiciones básicas de teoría de grafos. Un grafo consta de un conjunto de nodos, un conjunto de aristas y una correspondencia f del conjunto de aristas al conjunto de nodos.

Más detalles

DEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006

DEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006 ARBOLES ESTRUCTURAS DE DATOS 2006 DEFINICION Un árbol (tree) es un conjunto finito de nodos. Es una estructura jerárquica aplicable sobre una colección de elementos u objetos llamados nodos; uno de los

Más detalles

ARBOLES ARBOLES COMPUTACIONALES MATEMATICAS DISCRETAS II

ARBOLES ARBOLES COMPUTACIONALES MATEMATICAS DISCRETAS II ARBOLES ARBOLES COMPUTACIONALES MATEMATICAS DISCRETAS II Contenido Concepto Características y Propiedades Tipos de Arboles 1. Libres 2. Binarios 3. Expansión Mínima Algoritmo de Kruskal Algoritmo Prim

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

Cinemática directa. Dan Casas

Cinemática directa. Dan Casas Dan Casas 1 1. Introducción Cinemática directa Un modelo jerárquico se compone de varias mallas, relacionadas unas con otras de la misma manera que un esqueleto está compuesto de huesos, excepto que no

Más detalles

En la fig. 1 se representa el grafo, G=(V,A) donde: V = {1, 2, 3, 4, 5, 6} A = { {1,2}, {1,3}, {1,5}, {3}, {3,4}, {4,5}, {5,6} }

En la fig. 1 se representa el grafo, G=(V,A) donde: V = {1, 2, 3, 4, 5, 6} A = { {1,2}, {1,3}, {1,5}, {3}, {3,4}, {4,5}, {5,6} } Unidad 1 Parte 1 - Teoría de Grafos Introducción En este capítulo veremos la noción matemática de grafo y propiedades de los mismos. En capítulos subsiguientes veremos las estructuras de datos utilizadas

Más detalles

MATRIZ DE ARBOLES DE DECISION

MATRIZ DE ARBOLES DE DECISION MATRIZ DE ARBOLES DE DECISION Los árboles son un subconjunto importante de los grafos, y son una herramienta útil para describir estructuras que presentan algún tipo de jerarquía. Las dificultades de las

Más detalles

Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre

Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre Es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre elementos de un conjunto. Típicamente, un grafo se representa

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

Organización y acceso a los datos (continuación)

Organización y acceso a los datos (continuación) Organización y acceso a los datos (continuación) Bases de Datos 2 - Tecnologo de Informatica Outline 1 Recapitulemos Organización y Acceso a Datos 2 Estructuras de indexación Conceptos básicos Índices

Más detalles

D conjunto de N patrones etiquetados, cada uno de los cuales está caracterizado por n variables predictoras X 1,..., X n y la variable clase C.

D conjunto de N patrones etiquetados, cada uno de los cuales está caracterizado por n variables predictoras X 1,..., X n y la variable clase C. Tema 10. Árboles de Clasificación Pedro Larrañaga, Iñaki Inza, Abdelmalik Moujahid Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad del País Vasco Euskal Herriko Unibertsitatea

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

1. Leer el primer número y almacenarlo en la raíz del árbol. 2. Repetir hasta encontrar un duplicado o el árbol esté vacío.

1. Leer el primer número y almacenarlo en la raíz del árbol. 2. Repetir hasta encontrar un duplicado o el árbol esté vacío. Capítulo 6 Árboles 6.1 Introducción Esta no es una estructura lineal, deben conocerlos de matemáticas finitas. Ejemplos: la tabla de contenido de un libro, los que se hacen en los torneos, los arboles

Más detalles

UNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.

UNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.

Más detalles

MODELOS DE DATOS. Base de datos simple o plano

MODELOS DE DATOS. Base de datos simple o plano MODELOS DE DATOS Un modelo de datos es una colección de conceptos bien definidos matemáticamente que ayudan a expresar las propiedades estáticas y dinámicas de una aplicación con un uso de datos intensivo.

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 1. Introducción 2. Estructuras de datos lineales 3. Estructuras de datos jerárquicas 4. Grafos y caminos 5. Implementación de listas, colas, y pilas 6. Implementación

Más detalles

El TAD Grafo. El TAD Grafo

El TAD Grafo. El TAD Grafo Objetivos! Estudiar la especificación del TAD Grafo! Presentar diferentes alternativas de implementación! Conocer los algoritmos más importantes de manipulación de grafos Contenidos.1 Conceptos. Especificación

Más detalles

GRAMATICAS LIBRES DEL CONTEXTO

GRAMATICAS LIBRES DEL CONTEXTO GRMTICS LIBRES DEL CONTEXTO Estas gramáticas, conocidas también como gramáticas de tipo 2 o gramáticas independientes del contexto, son las que generan los lenguajes libres o independientes del contexto.

Más detalles

Algoritmos y Estructuras de Datos III

Algoritmos y Estructuras de Datos III Árboles Algoritmos y Estructuras de Datos III Árboles Definición: Un árbol es un grafo conexo sin circuitos simples. Árboles Teorema: Dado un grafo G = (V, X ) son equivalentes: 1. G es un árbol. 2. G

Más detalles

Apellidos:... Nombre:...

Apellidos:... Nombre:... Apellidos:....................................... Nombre:........................................ Introducción a la Inteligencia Artificial 1 er Parcial de Teoría 12 Noviembre 2004 Ejercicio 1: Responder

Más detalles

Programación de sistemas

Programación de sistemas Programación de sistemas Árboles Julio Villena Román MATERIALES CREADOS EN EL TRABAJO DE DIFERENTES AUTORES: Carlos Delgado Kloos, M.Carmen Fernández Panadero, Raquel M.Crespo García,

Más detalles

ORGANIZACION DE LA INFORMACION EN LA COMPUTADORA

ORGANIZACION DE LA INFORMACION EN LA COMPUTADORA 16 ORGANIZACION DE LA INFORMACION EN LA COMPUTADORA En una computadora se maneja mucha información, pero la persona que la utiliza debe saber guardar la información y buscarla después en el lugar adecuado.

Más detalles

Lenguajes y Compiladores Aspectos Formales (Parte 2) Compiladores

Lenguajes y Compiladores Aspectos Formales (Parte 2) Compiladores Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 2) 2007 1 Derivaciones El proceso de búsqueda de un árbol sintáctico para una cadena se llama análisis sintáctico. El lenguaje generado

Más detalles

4.1 Concepto de árbol.

4.1 Concepto de árbol. Apuntes Estructura de Datos Autor: Ing. Felipe Alanís González Página 1 4.1 Concepto de árbol. Una estructura de árbol es una forma de representar la JERARQUÍA de ciertos objetos en una forma gráfica.

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

Tema: Los Grafos y su importancia para la optimización de redes.

Tema: Los Grafos y su importancia para la optimización de redes. Tema: Los Grafos y su importancia para la optimización de redes. Qué son los Grafos? Un grafo es una dupla G= {X,U}, donde X es un conjunto finito y no vacio de elementos llamados vértices y U es el conjunto

Más detalles

Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos.

Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos. Grafos Los grafos son estructuras que constan de vértices o nodos y de aristas o arcos que conectan los vértices entre sí. Un grafo G consiste en dos cosas: 1. Un conjunto V de elementos llamados nodos

Más detalles

Unidad I: Introducción a las estructuras de datos

Unidad I: Introducción a las estructuras de datos Unidad I: Introducción a las estructuras de datos 1.1 Tipos de datos abstractos (TDA) Los tipos de datos abstractos (TDA) encapsulan datos y funciones que trabajan con estos datos. Los datos no son visibles

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

Unidad 1 Introducción a la teoría de gráficas

Unidad 1 Introducción a la teoría de gráficas Unidad 1 Introducción a la teoría de gráficas La Teoría de G ráficas es una técnica con la que se visualiza de forma global, holística o sistémica un problema. Esta técnica ayuda a comprender y análisis

Más detalles

Un grafo G = (V, E) se dice finito si V es un conjunto finito.

Un grafo G = (V, E) se dice finito si V es un conjunto finito. 1 Grafos: Primeras definiciones Definición 1.1 Un grafo G se define como un par (V, E), donde V es un conjunto cuyos elementos son denominados vértices o nodos y E es un subconjunto de pares no ordenados

Más detalles

Métodos de Inteligencia Artificial

Métodos de Inteligencia Artificial Métodos de Inteligencia Artificial L. Enrique Sucar (INAOE) esucar@inaoep.mx ccc.inaoep.mx/esucar Tecnologías de Información UPAEP Búsqueda Representación Tipos búsquedas: Sin información Con información

Más detalles