Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad III:
Algoritmos con estructuras de datos no lineales
Lima-Norte | Docente
c20202@utp.edu.pe
Logro de la Unidad Importancia
GRAFOS:
Estructura, grafos dirigidos, no dirigidos
Operaciones con grafos
Matriz de adyacencia
Introducción y definiciones
Un grafo G es una tupla G= (V, A), donde V es un conjunto no vacío
de vértices o nodos y A es un conjunto de aristas o arcos.
Cada arista es un par (v, w), donde v, w V.
Tipos de grafos
• Grafo no dirigido.
Las aristas no están ordenadas:
(v, w) = (w, v)
• Grafos dirigidos (o digrafos).
Las aristas son pares ordenados:
<v, w> <w, v>
<v, w> w = cabeza de la arista, v = cola.
Terminología de grafos.
• Nodos adyacentes a un nodo v: todos los nodos unidos a v
mediante una arista.
• En grafos dirigidos:
– Nodos adyacentes a v: todos los w con <v, w> A.
– Nodos adyacentes de v: todos los u con <u, v> A.
M 1 2 3 4 5
1 T T
2 T T
3 T T T 2
1
4
5 T 3
Mediante Listas de Adyacencia
4 5
1 2 3
2 3 5
3 1 4 5
4
5 4
Matrices de adyacencia
tipo GrafoNoEtiq= array [1..n, 1..n] de booleano
Sea M de tipo GrafoNoEtiq, G= (V, A).
M[v, w] = cierto (v, w) A
M 1 2 3 4 5
1 2 1 T T T
2 T T T T
3 3 T T
4 T T T
4 5 5 T T
1 M 1 2 3 4
3 1 3
0
2 2
2
2 4 3 0 4 2
4 2 3 4
Listas de adyacencia
tipo Nodo= entero (1..n)
tipo GrafoNoEtiq= array [1..n] de Lista[Nodo]
• Sea R de tipo GrafoNoEtiq, G= (V, A).
• La lista R[v] contiene los w tal que (v, w) A.
1 1 2 4
1 2 2 1 2 3 5
3 2 4
3 4 1 3 5
5
4 5 2 4
1 1 2 a
a 2 4 b
a
2 3 1 a 2 c 4 d
b c
4
4 d 3
Practicando
Indicar:
Conjunto de Vértices
Conjunto de Arcos
Grado del Nodo 1:
Grado del Nodo 2:
Grado del Nodo 4:
Nodo(s) adyacente al Nodo 5:
Nodo(s) adyacente al Nodo 3:
Indicar los caminos entre los nodos 1 y 2 con su respectiva longitud.
Indicar los caminos entre los nodos 1 y 5 con su respectiva longitud.
Indicar los caminos entre los nodos 5 y 2 con su respectiva longitud.
Elaborar la Matriz de Adyacencia
¿DUDAS?
Implementar lo Explicado en
Clase