2. UNIVERSIDAD MARIANO GALVEZ
Dato e Información
DATOS
•Es la mínima representación de la
información
•Hacen referencia a un conjunto de valores
pudiendo ser simples o múltiples
•Edad es un dato simple
•Nombre es un dato múltiple
INFORMACION
•Es el resultado de procesar un conjunto de
datos
4. UNIVERSIDAD MARIANO GALVEZ
Estructuras de datos estáticas
• Internamente utilizan la memoria estática
de la computadora para su
almacenamiento temporal
• Tienen una capacidad limitada de
elementos al definirlos.
5. UNIVERSIDAD MARIANO GALVEZ
Estructuras de datos dinámicas
• Internamente utilizan la memoria dinámica
de la computadora para su
almacenamiento,
• Direcciones de memoria junto y el manejo
de punteros en la parte de implementación
del programa.
• no tiene un tamaño o capacidad limitada
6. UNIVERSIDAD MARIANO GALVEZ
TIPOS ABSTRATOS DE DATOS
(TAD)
1. La abstracción es un mecanismo definido como
la capacidad de manejar objetos y situaciones
concentrándonos sólo en la esencia de los
mismos.
2. Los T.A.D. constituyen una forma de generalizar
y encapsular los aspectos más importantes de la
información
3. La definición de TAD puede dividirse en 2
niveles:
7. UNIVERSIDAD MARIANO GALVEZ
Niveles de un TAD
• Primer nivel, superficial, donde se define el TAD.
• Segundo nivel donde se profundiza en la
definición del TAD y en la implementación de sus
operaciones.
• Ejemplo: Un TAD es una fecha, y sus funciones de
manipulación (Distancia, Dia, Mes, etc).
8. UNIVERSIDAD MARIANO GALVEZ
DEFINICIÓN DE GRAFOS
1. Un grafo en el ámbito de las ciencias de la computación
es una estructura de datos, en concreto un tipo abstracto
de datos (TAD), que consiste en un conjunto de nodos
(también llamados vértices) y un conjunto de arcos
(aristas) que establecen relaciones entre los nodos.
2. El concepto de grafo TAD desciende directamente del
concepto matemático de grafo. En este contexto árboles y
grafos se refieren a estructuras de datos que permiten
organizar y mantener información en una computadora.
9. UNIVERSIDAD MARIANO GALVEZ
Introducción a los Grafos
• Los grafos se usan para modelar problemas
definidos en términos de relaciones o
conexiones entre objetos.
• Tienen un amplio uso en ingeniería para
representar redes de todo tipo:
• transporte (tren, carretera, avión),
• servicios (comunicación, eléctrica, gas, agua),
• de actividades en el planeamiento de
proyectos, etc.
10. UNIVERSIDAD MARIANO GALVEZ
VERTICES
Vértices: Son los puntos o nodos
con los que esta conformado un
grafo.
Aristas: Son las líneas con las
que se unen los vértices de un
grafo y con las que se
construyen caminos.
11. UNIVERSIDAD MARIANO GALVEZ
TIPOS DE GRAFOS
• Dirigidos: Cada arco • No dirigidos: El par
está representado de vértices que
por un par ordenado representa un arco
de vértices. no está ordenado.
12. UNIVERSIDAD MARIANO GALVEZ
REPRESENTACIÓN DE GRAFOS
• Matriz de adyacencia
Se asocia cada fila y cada columna a cada
nodo del grafo, siendo los elementos de la
matriz la relación entre los mismos,
tomando los valores de 1 si existe la arista
y 0 en caso contrario.
15. UNIVERSIDAD MARIANO GALVEZ
USO DE GRAFOS
• El uso de grafos es una teoría que se usa para
solucionar o buscar alternativas a diferentes
problemas o para visualizar el problema es su
conjunto.
• Encontrar los caminos
más cortos que van desde
el nodo a hasta los
restantes nodos. Ejercicio.
En el siguiente grafo
dirigido, encontrar cuál es
el camino más corto desde
a hasta d.
16. UNIVERSIDAD MARIANO GALVEZ
USO DE GRAFOS
• Supongamos que unas líneas aéreas realizan
vuelos entre las ciudades conectadas por líneas
la estructura de datos que refleja esta relación
recibe el nombre de grafo.
17. UNIVERSIDAD MARIANO GALVEZ
USO DE GRAFOS
• Los grafos sirven para representar relaciones
arbitrarias (no necesariamente jerárquicas) entre
objetos de datos
18. UNIVERSIDAD MARIANO GALVEZ
USO DE GRAFOS
• Circuitos electrónicos
lab-a01 Lab-a02
• Tarjetas impresas
it.uc3m.es
• Circuitos integrados
• Redes de transporte
inf.uc3m.es
• Autopistas
• Vuelos uc3m.es
• Redes de ordenadores telefonica.net
rediris.net
• LANs
• Internet
• Web otro.net
juan
• Bases de datos
pablo
david
• Diagramas entidad/relación
19. UNIVERSIDAD MARIANO GALVEZ
USO DE GRAFOS
• Modelar conectividad en computadoras y redes
de comunicaciones.
• Representar un mapa como un conjunto de
localidades con distancias entre ellas; usado
para calcular las rutas más cortas entre
localidades.
• Modelar capacidades de flujo en redes de
transporte.
• Modelar relaciones en familias, negocios u
organizaciones militares.
• Modelar algoritmos de computadora,
mostrando las transiciones del estado de un
programa a otro.
24. UNIVERSIDAD MARIANO GALVEZ
Terminología
• Un grafo consiste en un conjunto de vértices o nodos y un conjunto
de arcos.
• Un arco o arista es la línea que une un par de nodos
• Grafos dirigido y no dirigidos
• Una arista tiene, a veces, asociado un factor de peso, en cuyo caso se
dice que es un grafo valorado o ponderado (con pesos).
Estructura de Datos- 24
Grafos
25. UNIVERSIDAD MARIANO GALVEZ
Terminología
• Grado de un nodo
• En un grafo NO dirigido
• Grado de un nodo= nº de aristas que contiene
• En un grafo dirigido
• Grado de entrada = nº de aristas que llegan
• Grado de salida = nº de aristas que salen
• Grafos conexos
• Un grafo no dirigido es conexo si existe un
camino entre cualquier par de nodos que
forman el grafo
• Ejemplos:
grafo no conexo con dos
grafo conexo
componentes conexas
26. UNIVERSIDAD MARIANO GALVEZ
Terminología: camino
1. Un camino P de longitud n en
el grafo G es la secuencia de
n+1 vértices
V
2. Un camino es simple si todos a b
P1
los nodos que forman el d
camino son distintos, U X Z
P2 h
pudiendo ser iguales los c e
extremos del camino W g
• Ejemplo: f
• P1 es simple Y
• P2 no es simple
27. UNIVERSIDAD MARIANO GALVEZ
Terminología: ciclos y bucles
• Un ciclo es un camino
simple cerrado con u0=un, V
a b
compuesto al menos por tres
d
nodos U X Z
C2 h
• Un arco que va desde un e
c C1
vértice a sí mismo se W g
denomina bucle o loop
• Ejemplo f
Y
• C1 es un ciclo simple
• C2 es un ciclo no simple
Estructura de Datos- 27
Grafos
28. UNIVERSIDAD MARIANO GALVEZ
Grafos
C2
C5
C1 C7
C8
C4
C3
C6
Si cada punto representa una ciudad
• Cuantos caminos hay para ir de C1 a C4
• Cuántos para ir de C4 a C6
•Cuántas formas existen de llegar de C1 a C7
29. UNIVERSIDAD MARIANO GALVEZ
Grafos
C2
5 C5
C1 11 4 C7 40 C8
C4 2
2 8
1 7
C3
C6
Si cada punto representa una ciudad, cuál sería el camino
más corto entre C2 y C7
30. UNIVERSIDAD MARIANO GALVEZ
El tipo de dato abstracto Grafo
• Un TDA tiene atributos y funciones.
• Funciones de definición:
• tamano(), devuelve el número de vértices más el
número de aristas de G.
• estaVacio()
• numVertices() Devuelve el número de vértices
• numAristas() Devuelve el número de aristas
• Funciones de actualización del grafo:
• insertaArista Inserta y devuelve una arista no dirigida entre
• insertaAristaDirigida
• insertaVertice()
• eliminaVertice()
• eliminaArista()