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

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

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

Transcripción

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

2 Árbol: definición v Árbol (del latín arbor oris): Planta perenne, de tronco leñoso y elevado, que se ramifica a cierta altura del suelo. (otras, ver Real Academia Española ) Franco Guidi Polanco 2

3 v Árbol: Árbol: definición (cont.) Grafo conexo, no orientado y acíclico. A C E B H D Franco Guidi Polanco 3

4 Árbol: definición (cont.) v Árbol: Una estructura de datos accesada desde un nodo raíz. Cada nodo es ya sea una hoja o un nodo interno. Un nodo interno tiene uno o más nodos hijos, y se le llama padre de sus nodos hijos. Un árbol es, ya sea: un conjunto vacío, o una raíz con cero o más árboles Franco Guidi Polanco 4

5 Hojas y nodos internos v Una hoja es cualquier nodo que tiene sus hijos vacíos. v Un nodo interno es cualquier nodo con al menos un hijo no vacío. a Nodos internos b c d e f Hojas g h Franco Guidi Polanco 5

6 Representación de un árbol a raíz subárbol b c d e f g h i j subárbol k l m subárbol subárbol Franco Guidi Polanco 6

7 Representación de un árbol (cont.) a b c d e f g h i j k subárboles de nodo b subárboles de nodo c l m subárbol de nodo e Franco Guidi Polanco 7

8 Nodos padres e hijos v Las raíces de los subárboles de un árbol son hijos de la raíz del árbol. v Existe un arco desde cada nodo a cada uno de sus hijos, y se dice que este nodo es padre de sus hijos. Franco Guidi Polanco 8

9 Ruta y largo de una ruta v Si n 1, n 2,... n k es una secuencia de nodos en un árbol, de modo que n i es padre de n i + 1, para 1<=i<=k, entonces esta secuencia se llama ruta desde n 1 a n k. v El largo de esta ruta es k. b a n 1 c n 2 d e f g n 3 h Franco Guidi Polanco 9

10 Ancestros y descendientes v Si existe una ruta desde un nodo A a un nodo B, entonces A es ancestro de B y B es descendiente de A. v Luego, todos los nodos de un árbol son descendientes de la raíz del árbol, mientras que la raíz es el ancestro de todos los nodos. Franco Guidi Polanco 10

11 Altura v La altura de un nodo M de un árbol corresponde al número de nodos en la ruta desde la raíz hasta M. v La altura de un árbol corresponde a la altura del nodo más profundo. a Altura del árbol=4 d b e c f Altura del nodo=2 g h Franco Guidi Polanco 11

12 Niveles v Todos los nodos de altura d están en el nivel d en el árbol. v La raíz está en el nivel 1, y su altura es 1. Nivel 1 a Nivel 2 b c Nivel 3 d e f Nivel 4 g h Franco Guidi Polanco 12

13 Árboles binarios v Un A.B. está constituido por un conjunto finito de elementos llamados nodos. v Un árbol binario: no tiene nodos (está vacío); o tiene un nodo llamado raíz, junto con otros dos árboles binarios llamados subárboles derecho e izquierdo de la raíz. Nota: Una parte importante del material presentado en esta sección fue elaborado por Marcelo Silva F. Franco Guidi Polanco 13

14 Representación de un árbol binario (I) raíz subárbol izquierdo b a c subárbol derecho d e g f h Franco Guidi Polanco 14

15 Representación de un árbol binario (II) b a c raíz subárbol derecho d e f subárbol izquierdo g h Franco Guidi Polanco 15

16 Igualdad de árboles binarios v Para ser iguales, dos árboles deben tener tanto la misma estructura, como el mismo contenido. b a a b Franco Guidi Polanco 16

17 Árboles binarios llenos v Un árbol binario lleno es aquel en que cada nodo es un nodo interno con dos hijos no vacíos, o una hoja. a a b c b c d e f e f g h g h No es A.B. lleno Es A.B. lleno Franco Guidi Polanco 17

18 Árboles binarios completos v Un árbol binario completo tiene una forma restringida, que se obtiene al ser llenado de izquierda a derecha. En un A.B. Completo de altura d, todos los niveles, excepto posiblemente el nivel d están completamente llenos. Es un A.B. completo pero no es un A.B. lleno d b e a f c Franco Guidi Polanco 18

19 Número de nodos en un árbol binario v El máximo número de nodos en el nivel i de un árbol binario es 2 (i-1). v El máximo número de nodos en un árbol binario de altura K es 2 (K) -1. Franco Guidi Polanco 19

20 Representación de árboles binarios mediante nodos y referencias a b c d e f Franco Guidi Polanco 20

21 Diagrama de clases de un árbol binario v Diagrama de clases árbol binario de enteros: ABB insert(i:int) find(d:data):boolean delete(i:int) 1..1 root left data:int ABBNode setdata(i:int) getdata():int setleft(n:abbnode) getleft():abbnode setright(n:abbnode) getright():abbnode isleaf():boolean right Franco Guidi Polanco 21

22 Diagrama de objetos de un árbol binario :ABB root:abbnode data:20 :ABBNode data:7 :ABBNode data:32 :ABBNode :ABBNode :ABBNode data:2 data:15 data:40 Franco Guidi Polanco 22

23 Representación de árboles binarios mediante arreglos v Si la raíz de un subárbol se almacena en A[i], su hijo izquierdo se almacena en A[2*i], y su hijo derecho en A[2*i+1]. b a c d e g f h a b c d e f g h Franco Guidi Polanco 23

24 Recorrido de árboles binarios v Un recorrido es cualquier proceso destinado a visitar los nodos de un árbol binario en un determinado orden. v Cualquier recorrido que visite cada nodo exactamente una vez, se denomina una enumeración de los nodos del árbol. v Recorridos de enumeración a analizar: Preorden Inorden Postorden Franco Guidi Polanco 24

25 Recorrido en Preorden Dado un árbol binario: 1) Visitar su raíz. 2) Recorrer en preorden su subárbol izquierdo. 3) Recorrer en preorden su subárbol derecho Franco Guidi Polanco 25

26 Código para recorrido Preorden void preorder(binnode rt) // rt es la raíz del subarbol { if (rt==null) return; // subarbol vacío visit(rt) // hace algo con el nodo preorder(rt.left()); preorder(rt.right()); } Franco Guidi Polanco 26

27 Ejemplo de recorrido en Preorden d b a e c f g h i j k a b d c e f g i j k h Franco Guidi Polanco 27

28 Recorrido en Inorden Dado un árbol binario: 1) Recorrer en inorden su subárbol izquierdo. 2) Visitar su raíz. 3) Recorrer en inorden su subárbol derecho Franco Guidi Polanco 28

29 Código para recorrido Inorden void inorder(binnode rt) // rt es la raíz del subarbol { if (rt==null) return; // subarbol vacío inorder(rt.left()); visit(rt) // hace algo con el nodo inorder(rt.right()); } Franco Guidi Polanco 29

30 Ejemplo de recorrido en Inorden d b a e c g j f i h k d b a e c g j i k f h Franco Guidi Polanco 30

31 Recorrido en Postorden Dado un árbol binario: 1) Recorrer en postorden su subárbol izquierdo. 2) Recorrer en postorden su subárbol derecho. 3) Visitar su raíz Franco Guidi Polanco 31

32 Código para recorrido Postorden void postorder(binnode rt) // rt es la raíz del subarbol { if (rt==null) return; // subarbol vacío postorder(rt.left()); postorder(rt.right()); visit(rt) // hace algo con el nodo } Franco Guidi Polanco 32

33 Ejemplo de recorrido en Postorden b a c d e f g h i j k d b e j k i g h f c a Franco Guidi Polanco 33

34 Árbol binario de búsqueda v Supongamos que tenemos un conjunto de n elementos que pueden ser ordenados por alguna clave. v En un árbol binario de búsqueda (ABB), todos los nodos almacenados en el subárbol izquierdo de un nodo cuyo valor clave es C tienen claves menores que C, mientras que todos los nodos ubicados en el subárbol derecho tienen claves mayores que C. Franco Guidi Polanco 34

35 Ejemplos de árboles binarios de búsqueda a c <c >c d b e No es ABB c f Definición de ABB c b e a d Es ABB f Franco Guidi Polanco 35

36 Ingreso de elementos a un ABB { 10, 5, 7, 15, 14, 12, 18 } { 15, 18, 14, 5, 10, 12, 7 } Franco Guidi Polanco 36

37 ABB de referencia ABB insert(e:element) find(key:int):element delete(i:int):element ABBNode 1 Element {interface} 1 root left setdata(e:element) getdata():element setleft(n:abbnode) getleft():abbnode setright(n:abbnode) getright():abbnode isleaf():boolean right data getkey():int Franco Guidi Polanco 37

38 Ingreso de elementos a un ABB (cont.) private BinNode insert (BinNode rt, Element val) { if (rt == null) return new BinNode(val); Element it = (Element)rt.element(); if (it.key() > val.key()) rt.setleft(insert(rt.left(), val)); else rt.setright(insert(rt.right(), val)); return rt; } Franco Guidi Polanco 38

39 Características del ingreso de elementos a un ABB v Los elementos agregados a un ABB siempre son incorporados inicialmente como hojas. v Un conjunto de elementos dado puede generar diversos ABB, dependiendo del orden en que son ingresados. Franco Guidi Polanco 39

40 Recorrido Inorden en ABB Franco Guidi Polanco 40

41 Características del recorrido Inorden de un ABB v Si bien existen muchos ABBs posibles para un mismo conjunto de elementos, el recorrido Inorden de todos estos árboles siempre entrega el conjunto ordenado de menor a mayor. Franco Guidi Polanco 41

42 Búsqueda en ABB Para hallar un elemento con clave C, en un árbol A: v Si la raíz del árbol A almacena C, la búsqueda termina exitosamente. v Si C es menor que el valor de la raíz de A, buscar en el subárbol izquierdo. Si C es mayor que el valor de la raíz, buscar en el subárbol derecho. v La búsqueda termina al hallar el valor C, o al pretender buscar en un subárbol vacío. Franco Guidi Polanco 42

43 Búsqueda en ABB (cont.) Elem find(binnode rt, int key) { if (rt == null) return null; Element it = (Element)rt.element(); if ((int)it.key() > key) return find(rt.left(), key); else if (it.key() == key) return it; else return find(rt.right(), key); } Franco Guidi Polanco 43

44 Ejemplo de búsqueda en ABB Buscar 12 Búsqueda exitosa Buscar 16 Búsqueda infructuosa Franco Guidi Polanco 44

45 Eliminación de elementos de un ABB Se pueden presentar tres casos: v El elemento no existe. v El elemento es una hoja o tiene a lo más un hijo. v El elemento tiene dos hijos. Franco Guidi Polanco 45

46 Eliminar nodo que es una hoja o tiene a lo más un hijo Franco Guidi Polanco 46

47 Ejemplo eliminación de nodo con dos hijos El menor de los elementos mayores (Nodo más a la izquierda del subárbol derecho) Franco Guidi Polanco 47

48 Eliminar nodo con dos hijos 1. Hallar el nodo que contiene el menor de los elementos mayores del nodo a eliminar (el elemento más a la izquierda de su subárbol derecho) 2. Reemplazar los datos del nodo eliminar con los del nodo hallado. 3. Eliminar el nodo hallado, que tiene a lo más un hijo, con el procedimiento descrito previamente. Franco Guidi Polanco 48

49 Utilidad de los árboles binarios de búsqueda v Al buscar, el ABB permite descartar a priori un subconjunto de elementos, en forma análoga a la búsqueda binaria en arreglos ordenados. v El ABB presenta además la ventaja de poder ser implementado con punteros (estructura dinámica). v La incorporación y eliminación de elementos al ABB es mas rápida que en arreglos ordenados. Franco Guidi Polanco 49

50 Importancia de una estructura balanceada en los ABB v La estructura de un ABB es importante al momento de realizar búsquedas en él En el peor de los casos se hacen 3 iteraciones para una búsqueda En el peor de los casos se hacen 7 iteraciones para una búsqueda. Franco Guidi Polanco 50

Á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

NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS

NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS 1 NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS Árboles Binarios y Árboles Binarios Ordenados 2 Contenido Árboles binarios Iteradores Árboles binarios ordenados 3 Árboles binarios Algunas definiciones para

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

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

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

Á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

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

ÁRBOLES GENERALES Y Y ESTRUCTURAS DE ÍNDICES DEFINICIONES Y REPRESENTACIONES DEFINICIONES Y REPRESENTACIONES. NOMENCLATURA SOBRE ÁRBOLES. DECLARACIÓN Y REPRESENTACIÓN.. CONSTRUCCIÓN.. ÁRBOLES 2-3-4. ÁRBOLES

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

Tecnólogo Informático- Estructuras de Datos y Algoritmos- 2009

Tecnólogo Informático- Estructuras de Datos y Algoritmos- 2009 Árboles Ejemplos de estructuras arborescentes: con forma de árbol Regla de Alcance: los objetos visibles en un procedimiento son aquellos declarados en él mismo o en cualquier ancestro de él (cualquier

Más detalles

Estructuras de datos. Estructuras de datos

Estructuras de datos. Estructuras de datos Un arbol es un conjunto de nodos que cumplen con las relaciones padre, hijo y hermano. Llamamos hijos de un nodo a todos los nodos que podemos llegar directamente por medio de un apuntador hacia ellos

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

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

PRÁCTICA No. 13 ÁRBOL BINARIO DE BÚSQUEDA

PRÁCTICA No. 13 ÁRBOL BINARIO DE BÚSQUEDA INSTITUTO POLITÉCNICO NACIONAL SECRETARIA ACADÉMICA DIRECCIÓN DE EDUCACIÓN SUPERIOR ESIME CULHUACAN NOMBRE ALUMNO: FECHA DIA MES AÑO INGENIERÍA EN COMPUTACIÓN ASIGNATURA 1. Objetivo Apellido paterno ESTRUCTURAS

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

TEORÍA DE GRAFOS Ingeniería de Sistemas

TEORÍA DE GRAFOS Ingeniería de Sistemas TEORÍA DE GRAFOS Ingeniería de Sistemas Código: MAT-31114 AUTORES Ing. Daniel Zambrano Ing. Viviana Semprún UNIDADES DE LA ASIGNATURA» UNIDAD I. Relaciones» UNIDAD II. Estructuras Algebraicas» UNIDAD III.

Más detalles

Árboles balanceados. Alonso Ramírez Manzanares Computación y Algoritmos 28.04.2015 1. Thursday, April 30, 15

Árboles balanceados. Alonso Ramírez Manzanares Computación y Algoritmos 28.04.2015 1. Thursday, April 30, 15 Árboles balanceados Alonso Ramírez Manzanares Computación y Algoritmos 28.04.2015 1 Árboles balanceados Los algoritmos en árboles binarios de búsqueda dan buenos resultados en el caso promedio pero el

Más detalles

árbol como un conjunto de nodos y líneas

árbol como un conjunto de nodos y líneas ÁRBOLES CAPÍTULO 6 ÁRBOLES Desde el punto de vista conceptual, un árbol es un objeto que comienza con una raíz (root) y se extiende en varias ramificaciones o líneas (edges), cada una de las cuales puede

Más detalles

Árboles binarios de búsqueda

Árboles binarios de búsqueda Clase 27 Árboles binarios de búsqueda Árboles binarios de búsqueda En la clase anterior, definimos el concepto de árbol binario de búsqueda como un árbol binario de nodos que contienen una clave ordenada

Más detalles

APUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.

APUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido

Más detalles

Unidad Nº V Listas Enlazadas

Unidad Nº V Listas Enlazadas Instituto Universitario Politécnico Santiago Mariño Unidad Nº V Listas Enlazadas Lista Enlazadas Es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta

Más detalles

Árboles AVL. Laboratorio de Programación II

Árboles AVL. Laboratorio de Programación II Árboles AVL Laboratorio de Programación II Definición Un árbol AVL es un árbol binario de búsqueda que cumple con la condición de que la diferencia entre las alturas de los subárboles de cada uno de sus

Más detalles

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Introducción al tema a. Formar grupos de 4 personas b. Tomar una hoja en blanco y una lapicera o lápiz c. En la hoja en blanco diseña un

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

EJERCICIOS DE ÁRBOLES BINARIOS

EJERCICIOS DE ÁRBOLES BINARIOS EJERCICIOS DE ÁRBOLES BINARIOS 1) Supongamos que tenemos una función valor tal que dado un valor de tipo char (una letra del alfabeto) devuelve un valor entero asociado a dicho identificador. Supongamos

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

Á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 Recordatorio... Se acerca la fecha de la primera entrega

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

ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS

ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS 1 ORDENAMIENTO Y BÚSQUEDA EN ARREGLOS Corina Flores Villarroel ORDENAMIENTO EN ARREGLOS Y COLECCIONES Una de las tareas más comunes a la hora de procesar datos es la clasificación u ordenación de los datos.

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

Árbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción

Árbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Árbol binario Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Un Árbol Binario es un conjunto finito de Elementos, de nombre Nodos de forma que: El Árbol Binario

Más detalles

Tema 10- Representación Jerárquica: Tema 10- Representación Jerárquica: Árboles Binarios

Tema 10- Representación Jerárquica: Tema 10- Representación Jerárquica: Árboles Binarios Tema 10- Representación Jerárquica: Árboles Binarios Tema 10- Representación Jerárquica: Árboles Binarios Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia

Más detalles

Propedéutico de Programación

Propedéutico de Programación Propedéutico de Programación Coordinación de Ciencias Computacionales 11/13 Material preparado por: Dra. Pilar Gómez Gil Chapter 8 Binary Search Trees Tomado de: Dale, N. Weems, C++ Plus Data Structures

Más detalles

Notación Asintótica 2

Notación Asintótica 2 Notación Asintótica 2 mat-151 1 Éxamen Rápido (6 minutos) Cada operación fundamental usa c milisegundos, cuánto tiempo toma contar hasta 1,000,000? Cuál es el valor de N? Cuál es el órden de complejidad

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 ÁRBOLES 143

ESTRUCTURAS DE DATOS ÁRBOLES 143 ESTRUCTURAS DE DATOS ÁRBOLES 143 TEMA 4. ÁRBOLES 4.1. CONCEPTOS GENERALES. Un árbol es una estructura de datos ramificada (no lineal) que puede representarse como un conjunto de nodos enlazados entre sí

Más detalles

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Características ARBOLES - CONCEPTOS Cada elemento del árbol se relaciona con cero o más elementos a quienes llama hijos. Si el árbol no

Más detalles

Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución.

Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución. BÚSQUEDA HEURÍSTICA estudio de los métodos y reglas del descubrimiento y la invención. Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución. Situaciones

Más detalles

Sistemas Operativos Practica 1: procesos y concurrencia.

Sistemas Operativos Practica 1: procesos y concurrencia. Sistemas Operativos Practica 1: procesos y concurrencia. Objetivos: Introducir al alumno a los conceptos de programa, concurrencia, paralelismo y proceso o tarea. Manejo del concepto de concurrencia haciendo

Más detalles

Árboles binarios de búsqueda ( BST )

Árboles binarios de búsqueda ( BST ) Árboles binarios de búsqueda ( BST ) mat-151 Alonso Ramírez Manzanares Computación y Algoritmos 24.04.2015 Arbol Binario de Búsqueda Un árbol binario de búsqueda (Binary Search Tree [BST]) es un árbol

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

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

Algorítmica y Complejidad. Tema 3 Ordenación.

Algorítmica y Complejidad. Tema 3 Ordenación. Algorítmica y Complejidad Tema . Introducción.. Algoritmo de inserción.. Algoritmo de selección.. Algoritmo de la burbuja.. Algoritmo heapsort.. Algoritmo quicksort. 7. Algoritmo countingsort.. Algoritmo

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

NOCIONES PRELIMINARES (*) 1

NOCIONES PRELIMINARES (*) 1 CONJUNTOS NOCIONES PRELIMINARES (*) 1 Conjunto no es un término definible, pero da idea de una reunión de cosas ( elementos ) que tienen algo en común. En matemática los conjuntos se designan con letras

Más detalles

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y Ciencias de la Computación RELACIÓN DE PROBLEMAS. TEMA IV. PROBLEMAS DE JUEGOS.

Más detalles

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Por favor siga las siguientes indicaciones: Escriba con lápiz y de forma prolija. Escriba las hojas de un solo lado Escriba su nombre y número de documento

Más detalles

El programa que permite el manejo de la base de datos tiene la siguiente funcionalidad:

El programa que permite el manejo de la base de datos tiene la siguiente funcionalidad: El TAD Diccionario Cuando se usa un conjunto en el diseño de un algoritmo podría no ser necesario contar con operaciones de unión o intersección. A menudo lo que se necesita es simplemente manipular un

Más detalles

Árboles de Búsqueda Binaria. Agustín J. González ELO-320: Estructura de Datos y Algoritmos

Árboles de Búsqueda Binaria. Agustín J. González ELO-320: Estructura de Datos y Algoritmos Árboles de Búsqueda Binaria Agustín J. González ELO-320: Estructura de Datos y Algoritmos 1 Introducción Los árboles de búsqueda son estructuras de datos que soportan las siguientes operaciones de conjuntos

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

VI Colas de prioridad

VI Colas de prioridad VI Colas de prioridad Una cola de prioridad (cat: cua de prioritat; ing: priority queue) es una colección de elementos donde cada elemento tiene asociado un valor susceptible de ordenación denominado prioridad.

Más detalles

Estructuras de Datos en Java

Estructuras de Datos en Java Estructuras de Datos en Java 1. Antecedentes Introducción a la Orientación a Objetos La programación orientada a objetos (POO) es una nueva manera de enfocar la programación. Desde sus comienzos, la programación

Más detalles

TEORÍA DE CONJUNTOS.

TEORÍA DE CONJUNTOS. TEORÍA DE CONJUNTOS. NOCIÓN DE CONJUNTO: Concepto no definido del cual se tiene una idea subjetiva y se le asocian ciertos sinónimos tales como colección, agrupación o reunión de objetos abstractos o concretos.

Más detalles

Tablas Hash y árboles binarios

Tablas Hash y árboles binarios Tablas Hash y árboles binarios Algoritmos Tablas hash Árboles Binarios Árboles Balanceados Tablas Hash Introducción Las tablas hash son estructuras tipo vector que ayudan a asociar claves con valores o

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

Computabilidad y Lenguajes Formales: Autómatas Finitos

Computabilidad y Lenguajes Formales: Autómatas Finitos 300CIG007 Computabilidad y Lenguajes Formales: Autómatas Finitos Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V. No Determinismo Hasta ahora cada

Más detalles

SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES

SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES RELACIONES BINARIAS PAR ORDENADO Es un arreglo de dos elementos que tienen un orden determinado donde a es llamada al primera componente y b es llamada la

Más detalles

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Registro (record): es la unidad básica de acceso y manipulación de la base de datos. UNIDAD II 1. Modelos de Bases de Datos. Modelo de Red. Representan las entidades en forma de nodos de un grafo y las asociaciones o interrelaciones entre estas, mediante los arcos que unen a dichos nodos.

Más detalles

Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º

Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º 1. Ejercicio (1 punto) Dado el array A={8, 3, 7, 1, 4, 9, 5, 2, 6 Describir cual es el estado del array A después de cada paso principal del algoritmo: InsertionSort. {8, 3, 7, 1, 4, 9, 5, 2, 6 {3, 8,

Más detalles

PROGRAMACION ORIENTADA A OBJETOS Ingenieria Informática Final Febrero 2006/07

PROGRAMACION ORIENTADA A OBJETOS Ingenieria Informática Final Febrero 2006/07 PROGRAMACION ORIENTADA A OBJETOS Ingenieria Informática Final Febrero 2006/07 Ejercicio 1. Un indice de referencias cruzadas de las palabras que aparecen en un texto es una tabla por palabras y, por cada

Más detalles

Definiciones Una relación R en un conjunto A es una relación de orden si verifica las propiedades reflexiva, antisimétrica y transitiva.

Definiciones Una relación R en un conjunto A es una relación de orden si verifica las propiedades reflexiva, antisimétrica y transitiva. RELACIONES DE ORDEN Definiciones Una relación R en un conjunto A es una relación de orden si verifica las propiedades reflexiva, antisimétrica y transitiva. Un conjunto parcialmente ordenado ( A, R ) es

Más detalles

(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es

(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero

Más detalles

Proyecto 6. Árboles de decisión: Un árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial.

Proyecto 6. Árboles de decisión: Un árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial. Árboles de decisión: Un árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial. Funcionamiento: Se realiza un test en cada nodo interno del árbol, a medida que

Más detalles

Curso de Programación 1

Curso de Programación 1 Curso de Programación 1 Plan 97 Búsqueda y Ordenación Métodos de búsqueda Existen aplicaciones en las cuales es necesario consultar si un elemento se encuentra dentro de un array. A continuación veremos

Más detalles

(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados

(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero

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

Grafos. Amalia Duch Brown Octubre de 2007

Grafos. Amalia Duch Brown Octubre de 2007 Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido

Más detalles

Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos

Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos Estructuras de Datos. Estructuras de Datos para Conjuntos Disjuntos Santiago Zanella 2008 1 Introducción Para ciertas aplicaciones se requiere mantener n elementos distintos agrupándolos en una colección

Más detalles

Este material es de uso exclusivo para estudio, los textos fueron tomados textualmente de varios libros por lo que está prohibida su impresión y

Este material es de uso exclusivo para estudio, los textos fueron tomados textualmente de varios libros por lo que está prohibida su impresión y Este material es de uso exclusivo para estudio, los textos fueron tomados textualmente de varios libros por lo que está prohibida su impresión y distribución. Listas Enlazadas Estructuras de datos dinámicas

Más detalles

El Juego como Problema de Búsqueda

El Juego como Problema de Búsqueda El Juego como Problema de Búsqueda En este algoritmo identificamos dos jugadores: max y min. El objetivo es encontrar la mejor movida para max. Supondremos que max mueve inicialmente y que luego se turnan

Más detalles

Autómatas Deterministas. Ivan Olmos Pineda

Autómatas Deterministas. Ivan Olmos Pineda Autómatas Deterministas Ivan Olmos Pineda Introducción Los autómatas son una representación formal muy útil, que permite modelar el comportamiento de diferentes dispositivos, máquinas, programas, etc.

Más detalles

MATEMÁTICAS BÁSICAS. 2 de marzo de Universidad Nacional de Colombia MATEMÁTICAS BÁSICAS

MATEMÁTICAS BÁSICAS. 2 de marzo de Universidad Nacional de Colombia MATEMÁTICAS BÁSICAS 2 de marzo de 2009 Parte I Conjuntos Definición intuitiva de conjunto Definición Un conjunto es una colección de objetos. Ejemplos A = {a, e, i, o, u} B = {blanco, gris, negro} C = {2, 4, 6, 8, 9} D =

Más detalles

Capítulo 6. Relaciones. Continuar

Capítulo 6. Relaciones. Continuar Capítulo 6. Relaciones Continuar Introducción Una relación es una correspondencia entre dos elementos de dos conjuntos con ciertas propiedades. En computación las relaciones se utilizan en base de datos,

Más detalles

Tema 9. Algoritmos sobre listas. Programación Programación - Tema 9: Algoritmos sobre listas

Tema 9. Algoritmos sobre listas. Programación Programación - Tema 9: Algoritmos sobre listas Tema 9 Algoritmos sobre listas Programación 2015-2016 Programación - Tema 9: Algoritmos sobre listas 1 Tema 9. Algoritmos sobre listas Algoritmos sobre Arrays. Búsqueda. Inserción. Ordenación. Programación

Más detalles

Estructuras de Datos. Montículos. Montículos. Montículos. Tema 3. Montículos. Definiciones básicas: Definiciones básicas:

Estructuras de Datos. Montículos. Montículos. Montículos. Tema 3. Montículos. Definiciones básicas: Definiciones básicas: Estructuras de Datos Tema. 1. Definiciones básicas 2. Implementación. Operaciones con montículos 4. Definiciones básicas: En un árbol binario completo todos los niveles del árbol (excepto tal vez el último)

Más detalles

Notas de Clase. Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia. 21 de febrero de 2004

Notas de Clase. Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia. 21 de febrero de 2004 Árboles Notas de Clase Prof. Juan Andrés Colmenares, M.Sc. Instituto de Cálculo Aplicado Facultad de Ingeniería Universidad del Zulia 21 de febrero de 2004 Índice 1. Definición 1 2. Términos Básicos 2

Más detalles

Bases de Datos: fundamentos del modelo relacional

Bases de Datos: fundamentos del modelo relacional Bases de Datos: fundamentos del modelo relacional Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl Ejemplo de una Relación Código

Más detalles

Strings en Java. String es una clase, no un tipo primitivo. Las variables de tipo String, en cualquier instante, pueden contener:

Strings en Java. String es una clase, no un tipo primitivo. Las variables de tipo String, en cualquier instante, pueden contener: Strings en Java Manejo básico de cadenas de caracteres y archivos de texto en Java Prof. Franco Guidi Polanco, Ph.D. Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

Más detalles

Introducción al lenguaje C

Introducción al lenguaje C Programación 2 Profesorado de Informática CeRP del Suroeste, Uruguay 29 de marzo de 2016 Estructuras de control IV Iteración Sentencia for: for (inicio; condicion; paso) cuerpo for (int i = 0; i < 10;

Más detalles

Programación Lineal. Modelo de Redes. Alcance de las aplicaciones. Curso: Investigación de Operaciones Ing. Javier Villatoro

Programación Lineal. Modelo de Redes. Alcance de las aplicaciones. Curso: Investigación de Operaciones Ing. Javier Villatoro Programación Lineal Modelo de Redes Alcance de las aplicaciones Curso: Investigación de Operaciones Ing. Javier Villatoro ALCANCE DE LAS APLICACONES DE REDES ALCANCE DE LAS APLICACIONES Muchas situaciones

Más detalles

Algoritmos de Strings. Héctor Navarro

Algoritmos de Strings. Héctor Navarro lgoritmos de Strings Héctor Navarro Substrings Dado un string T (posiblemente muy grande) y un patrón P (de tamaño menor), encontrar la primera (o todas) las apariciones de P en T Solución trivial de (NM)

Más detalles

Ejemplos de TAD (tipos simples)

Ejemplos de TAD (tipos simples) ESPECIFICACIÓN BOOLEANOS TAD booleano Ejemplos de TAD (tipos simples) T : booleano { valor cierto } F : booleano { valor falso } : booleano booleano : booleano, booleano booleano : booleano, booleano booleano

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

Solución - práctico 10

Solución - práctico 10 Solución - práctico 10 Complejidad Ejercicio 1 a) Una implementación del algoritmo es la siguiente: /* Procedimiento que se encarga de realizar la unión de los dos conjuntos * ordenados der1 e izq1 son

Más detalles

Funciones: Aspectos básicos

Funciones: Aspectos básicos Funciones: Aspectos básicos Nombre: Curso:.. Producto cartesiano En teoría de conjuntos, el producto cartesiano de dos conjuntos es una operación que resulta en otro conjunto cuyos elementos son todos

Más detalles

Teoría de grafos y optimización en redes

Teoría de grafos y optimización en redes Teoría de grafos y optimización en redes José María Ferrer Caja Universidad Pontificia Comillas Definiciones básicas Grafo: Conjunto de nodos (o vértices) unidos por aristas G = (V,E) Ejemplo V = {,,,,

Más detalles

Binary Decision Diagrams

Binary Decision Diagrams Rodríguez Blanco 2006-05-18 Introduccion Equivalencia Tablas de verdad eficientes Construcción de Equivalencia Tablas de verdad eficientes Equivalencia de dos fórmulas A 1 y A 2. Construir su tabla de

Más detalles

Grados Ing. Inf. y Mat. Inf. Julio 2014 Algoritmos y Estructura de Datos Página 1 de 6

Grados Ing. Inf. y Mat. Inf. Julio 2014 Algoritmos y Estructura de Datos Página 1 de 6 Grados Ing. Inf. y Mat. Inf. Julio 201 Algoritmos y Estructura de Datos Página 1 de 6 Algoritmos y Estructura de Datos: Examen Julio (Solución) Grados Ing. Inf. y Mat. Inf. Julio 201 Departamento de Lenguajes,

Más detalles

El TAD Grafo. El TAD Grafo

El TAD Grafo. El TAD Grafo ! Esta representación resulta útil cuando el número de vértices se conoce previamente y permanecerá fijo durante la resolución del problema, pero resulta ineficiente si necesitamos añadir o eliminar vértices

Más detalles

Conjuntos disjuntos (Relaciones de equivalencia)

Conjuntos disjuntos (Relaciones de equivalencia) Conjuntos disjuntos (Relaciones de equivalencia) Una relación R se define en un conjunto C si para todo par de elementos (a,b),a,b C,a R b es verdadera o falsa. Una relación de equivalencia es una relación

Más detalles

UNIVERSIDAD AUTÓNOMA DE AGUASCALIENTES CENTRO DE CIENCIAS BÁSICAS DEPARTAMENTO DE SISTEMAS ELECTRÓNICOS OBJETIVO GENERAL MÉTODOS DIDÁCTICOS EVALUACIÓN

UNIVERSIDAD AUTÓNOMA DE AGUASCALIENTES CENTRO DE CIENCIAS BÁSICAS DEPARTAMENTO DE SISTEMAS ELECTRÓNICOS OBJETIVO GENERAL MÉTODOS DIDÁCTICOS EVALUACIÓN UNIVERSIDAD AUTÓNOMA DE AGUASCALIENTES CENTRO DE CIENCIAS BÁSICAS DEPARTAMENTO DE SISTEMAS ELECTRÓNICOS MATERIA: ESTRUCTURAS DE DATOS HRS. T/P: 2/3 CARRERA: LIC. EN TECNOLOGÌAS DE INFORMACIÓN CRÉDITOS:

Más detalles

Particiones binarias del espacio (BSP)

Particiones binarias del espacio (BSP) (BSP) Contenido 1. Introducción. 2. Quadtrees. 3. Árboles BSP. 4. Aplicación al algoritmo del pintor. 5. Construcción de un árbol BSP. 6. Conclusiones. Contenido 1. Introducción. 2. Quadtrees. 3. Árboles

Más detalles

Aprendizaje Automatizado

Aprendizaje Automatizado Aprendizaje Automatizado Aprendizaje Automatizado Programas que mejoran su comportamiento con la experiencia. Dos formas de adquirir experiencia: A partir de ejemplos suministrados por un usuario (un conjunto

Más detalles

14. ÁRBOLES. 14.1 Fundamentos y terminología básica

14. ÁRBOLES. 14.1 Fundamentos y terminología básica Ricardo Ferrís / Jesús Albert Algoritmos y estructuras de datos I 14. ÁRBOLES 14.1 FUNDAMENTOS Y TERMINOLOGÍA BÁSICA... 79 14.2. ÁRBOLES BINARIOS... 81 14.3. FUNDAMENTOS... 82 14.3. OPERACIONES CON ÁRBOLES

Más detalles

6. Diagramas de flujo.

6. Diagramas de flujo. Ingeniería de Control I Tema 6 Diagramas de flujo 1 6. Diagramas de flujo. Representación en DF Simplificaciones Fórmula de Mason Formas de Kalman Sistemas MIMO Diagramas de Flujo 2 1 Bibliografía Señales

Más detalles

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R.

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R. Conjuntos Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por se entiende que a pertenece a R. a R Normalmente, podremos definir a un conjunto de dos maneras: Por

Más detalles

TIPO DE DATO ABSTRACTO (TDA)

TIPO DE DATO ABSTRACTO (TDA) TIPO DE DATO ABSTRACTO (TDA) Ing. Eduard Antonio Lozano Córdoba Nota: Toda la información fue copiada de: Libros físicos e Internet Actividad Extra Clases #include #include int binario(int

Más detalles

Complejidad computacional (Análisis de Algoritmos)

Complejidad computacional (Análisis de Algoritmos) Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución

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

Arboles Binarios de Búsqueda

Arboles Binarios de Búsqueda Arboles Binarios de Búsqueda Algoritmos y Estructuras de Datos Departamento de Electricidad y Electrónica (UPV/EHU) Arboles Binarios de Búsqueda p.1/52 Arboles Binarios Arbol binario: árbol ordenado de

Más detalles