arboles y grafos

27
ÁRBOLES Y GRAFOS

Upload: alexis-chavez

Post on 11-Jul-2015

509 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: Arboles y grafos

ÁRBOLES Y GRAFOS

Page 2: Arboles y grafos

ÁRBOLES

Page 3: Arboles y grafos

ÁRBOLES

Desde el punto de vista conceptual, un árbol es un objeto que comienza con una

raíz y se extiende en varias ramificaciones o líneas, cada una de las cuales puede

extenderse en ramificaciones hasta terminar, finalmente en una hoja.

Los árboles representan las estructuras no-lineales y dinámicas de datos más

importantes en computación. Dinámicas, puesto que a cada elemento del árbol

pueden seguirle varios elementos.

Page 4: Arboles y grafos

PROPIEDADES DE UN ÁRBOL

En la ciencia de la computación definimos un árbol como un conjunto de nodos ylíneas. Un nodo es un elemento de información que reside en el árbol. Una línea es unpar de nodos ordenados, y a la secuencia de líneas se le denomina ruta.

Además, los árboles tienen las siguientes propiedades:

Tienen un nodo al que se le llama raíz del árbol.

Todos los nodos, excepto la raíz, tienen una sola línea de entrada (el nodo raíz notiene ninguna).

Existe una ruta única del nodo raíz a todos los demás nodos del árbol.

Si hay una ruta <a,b>, entonces a „b‟ se le denomina “hijo” de “a” y es el nodoraíz de un subárbol.

Page 5: Arboles y grafos

Gráficamente puede representarse una estructura árbol de diferentes maneras y todas ellas

equivalentes;

Page 6: Arboles y grafos

CARACTERISTICAS DE UN ÁRBOL

1. NODO indica un elemento, o ítem, de información.

2. Todo árbol que no es vacío, tiene un único nodo raíz.

3. Un nodo X es descendiente directo de un nodo Y, si el nodo X es apuntado por el nodo Y. X eshijo de Y.

4. Un nodo X es antecesor directo de un nodo Y, si el nodo X apunta al nodo Y. X es padre de Y.

5. Se dice que todos los nodos que son descendientes directos (hijos) de un mismo nodo (padre),son hermanos.

6. Todo nodo que no tiene ramificaciones (hijos), se conoce con el nombre de terminal u hoja.

7. Todo nodo que no es raíz, ni terminal u hoja se conoce con el nombre de interior.

8. Grado es el número de descendientes directos de un determinado nodo. Grado del árbol es elmáximo grado de todos los nodos del árbol.

9. Nivel es el número de arcos que deben ser recorridos para llegar a un determinado nodo. Pordefinición, la raíz tiene nivel 1.

10.Altura del árbol es el máximo número de niveles de todos los nodos del árbol.

Page 7: Arboles y grafos

EJEMPLO DE UN ÁRBOL

A es la raíz del árbol.

B es hijo de A.

A es padre de B.

B y C son hermanos.

I,E,J,K,G,L son hojas.

B, D, F, C, H son nodos

interiores.

El grado de nodo A es 2.

Nivel del nodo A es 1.

Nivel B es 2.

Altura del árbol 4.

A

ED

CB

F G H

I J K L

Page 8: Arboles y grafos

ÁRBOL BINARIO

Un árbol ordenado es aquel en el cual la distribución de las ramas sigue cierto

orden. Los árboles ordenados de grado 2 son de especial interés puesto que

representan una de las estructuras de datos más importante en computación,

conocida como árboles binarios.

En un árbol binario cada nodo puede tener como máximo dos subárboles; y

siempre es necesario distinguir entre el subárbol izquierdo y el subárbol derecho.

Page 9: Arboles y grafos

APLICACIONES DE ÁRBOLES BINARIOS

Árboles binarios de búsqueda.

Representación de una expresión

algebraica.

Árbol Genealógico.

Page 10: Arboles y grafos

ÁRBOLES BINARIOS DISTINTOS

Dos árboles binarios son distintos cuando sus estructuras son diferentes. Ejemplo:

A

A

B

B

A

B

A

D

B

D

C

C

Page 11: Arboles y grafos

ÁRBOLES BINARIOS SIMILARES

Dos árboles binarios son similares cuando sus estructuras son idénticas, pero la

información que contienen sus nodos difiere entre sí.

A

E

B

C

A

F

P

SR

J

K

T

Page 12: Arboles y grafos

ÁRBOLES BINARIOS EQUIVALENTES

Los árboles binarios equivalentes se definen como aquellos que son similares y

además los nodos contienen la misma información.

E

F

J

K

E

F

J

K

Page 13: Arboles y grafos

ÁRBOLES BINARIOS COMPLETOS

Se define un árbol binario completo como un árbol en el que todos sus nodos,

excepto los de último nivel, tienen dos hijos; el subárbol izquierdo y el subárbol

derecho.

A

B

D

C

F GE

Page 14: Arboles y grafos

RECORRIDOS EN ÁRBOLES BINARIOS

Una de las operaciones más importantes a realizar en un árbol binario es el

recorrido de los mismos. Recorrer significa visitar los nodos del árbol en forma

sistemática; de tal manera que todos los nodos del

mismo sean visitados una sola vez.

Existen tres formas diferentes de efectuar el recorrido y todas ellas de

naturaleza recursiva, éstas son:

Page 15: Arboles y grafos

RECORRIDOS

Recorrido en preorden:

Visitar la raíz

Recorrer el subárbol izquierdo

Recorrer el subárbol derecho

Recorrido en inorden:

Recorrer el subárbol izquierdo

Visitar la raíz

Recorrer el subárbol derecho

Recorrido en postorden:

Recorrer el subárbol izquierdo

Recorrer el subárbol derecho

Visitar la raíz

Page 16: Arboles y grafos

ÁRBOL BINARIO DE BÚSQUEDA

El árbol binario de búsqueda es una estructura sobre la cual se pueden realizar

eficientemente las operaciones de búsqueda, inserción y eliminación.

Formalmente se define un árbol binario de búsqueda de la siguiente manera:

“Para todo nodo T del árbol debe cumplirse que todos los valores de los nodos del

subárbol izquierdo de T deben ser menores o iguales al valor del nodo T. De

forma similar, todos los valores de los nodos el subárbol derecho de T deben ser

mayores o iguales al valor del nodo T”.

Page 17: Arboles y grafos

EJEMPLO ÁRBOL BINARIO DE BÚSQUEDA

Page 18: Arboles y grafos

GRAFOS

Page 19: Arboles y grafos

GRAFO

Un grafo G = (V, E) consiste en un conjunto finito V cuyos miembros se llaman

vértices y una familia finita de pares no ordenados de vértices a cuyos elementos

llamaremos aristas o arcos.

El número de vértices, es decir la cardinalidad del conjunto V se denomina orden

del grafo y se denota por |V |. Por lo general se utiliza n para denotar el orden

de G. El número de aristas, es decir la cardinalidad de E, se denomina tamaño

del grafo y se denota por |E |. Por lo general se utiliza m para denotar el tamaño

de G.

Page 20: Arboles y grafos

CARACTERISTICAS DE UN GRAFO

a)Se llama bucle o lazo a toda arista de la forma (v, v)

b) Se llaman aristas múltiples a las aristas que aparecen repetidas en E

c) Se dice que dos vértices son adyacentes si están unidos por una arista

d) Se dice que dos aristas son adyacentes si tienen un vértice en común,

e) Se dice que una arista y un vértice son incidentes si el vértice es extremo de

la arista,

f) Se dice que un vértice es aislado si no es adyacente a ningún otro vértice.

g) Se dice que un grafo es simple si no tiene bucles ni aristas múltiples

Page 21: Arboles y grafos

EJEMPLO DE UN GRAFO

En el grafo anterior u, v son vértices adyacentes, (u, v) y (v, w) son aristas adyacentes, z es un

vértice aislado.

Page 22: Arboles y grafos

TIPOS DE GRAFOS

Un grafo regular de grado n si todos sus vértices tienen grado n.

Page 23: Arboles y grafos

Un grafo completo si cada par de vértices está unido por una arista. Se denota por Kn al grafo

completo de n vértices

Page 24: Arboles y grafos

Un digrafo o grafo dirigido es un par D = (V, E) consistente en un conjunto finito no

vacíoV cuyos miembros se llaman vértices y una familia finita E de pares ordenados de vértices

a cuyos elementos llamaremos aristas o arcos.

Page 25: Arboles y grafos

REPRESENTACION DE GRAFOS

La matriz de adyacencia de un grafo es simétrica. Si un vértice es aislado entonces la correspondiente

fila (columna) esta compuesta sólo por ceros. Si el grafo es simple entonces la matriz de adyacencia

contiene solo ceros y unos (matriz binaria) y la diagonal esta compuesta sólo por ceros.

Page 26: Arboles y grafos

La matriz de incidencia sólo contiene ceros y unos (matriz binaria). Como cada arista incide

exactamente en dos vértices, cada columna tiene exactamente dos unos. El número de unos que

aparece en cada fila es igual al grado del vértice correspondiente. Una fila compuesta sólo por

ceros corresponde a un vértice aislado.

Page 27: Arboles y grafos

La matriz de adyacencia de un dígrafo no es simétrica. Es una matriz binaria. El número de unos

que aparecen en una fila es igual al grado de salida del correspondiente vértice y el número de

unos que aparecen en una determinada columna es igual al grado de entrada del

correspondiente vértice.