Académique Documents
Professionnel Documents
Culture Documents
Representar grafos
Compartir Tuitear Correo electrónico
Representación de grafos
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 1/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Practica: Cuestionario:
representar grafos
Desafío: almacena un
grafo
Siguiente lección
Búsqueda en anchura
Listas de aristas
Una forma sencilla de representar un grafo es solo
una lista, o un arreglo, de ∣E∣ aristas, a la que
llamamos una lista de aristas. Para representar una
arista, solo tenemos un arreglo de dos números de
vértices, o un arreglo de objetos que contienen los
números de vértices sobre los que inciden las
aristas. Si las aristas tienen pesos, agrega ya sea un
tercer elemento al arreglo o más información al
objeto, que dé el peso de la arista. Como cada
arista contiene solo dos o tres números, el espacio
total para una lista de aristas es Θ(E). Por
ejemplo, aquí está cómo representamos una lista
de aristas en JavaScript para el grafo de la red
CIENCIAS DE LA
COMPUTACIÓN ALGORITMOS social:
Representación de grafos
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 2/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Practica: Cuestionario:
describir grafos Las listas de aristas son sencillas, pero si queremos
encontrar si el grafo contiene una arista en
Representar grafos particular, tenemos que buscar en la lista de aristas.
Si las aristas aparecen en la lista de aristas sin
Practica: Cuestionario: ningún orden en particular, eso es una búsqueda
representar grafos
lineal sobre ∣E∣ aristas. Pregunta para pensar al
respecto: ¿cómo puedes organizar una lista de
Desafío: almacena un
grafo aristas para hacer que la búsqueda de una arista en
particular tarde un tiempo O(lg E)? La respuesta
Siguiente lección es un poco complicada.
Búsqueda en anchura
Matrices de adyacencia
Para un grafo con ∣V ∣ vértices, una matriz de
adyacencia es una matriz de ∣V ∣ × ∣V ∣ de ceros y
unos, donde la entrada en la fila i y la columna j es
1 si y solo si la arista (i, j) está en el grafo. Si
quieres indicar un peso de la arista, ponlo en la
entrada de la fila i, columna j y reserva un valor
especial (tal vez null) para indicar una arista
ausente. Aquí está la matriz de adyacencia para el
grafo de la red social:
CIENCIAS DE LA
COMPUTACIÓN ALGORITMOS
Representación de grafos
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 3/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Describir grafos
Practica: Cuestionario:
describir grafos
Representar grafos
Practica: Cuestionario:
representar grafos
[ [0, 1, 0, 0, 0, 0, 1, 0, 1, 0],
Siguiente lección [1, 0, 0, 0, 1, 0, 1, 0, 0, 1],
Búsqueda en anchura [0, 0, 0, 0, 1, 0, 1, 0, 0, 0],
[0, 0, 0, 0, 1, 1, 0, 0, 1, 0],
[0, 1, 1, 1, 0, 1, 0, 0, 0, 1],
[0, 0, 0, 1, 1, 0, 0, 0, 0, 0],
[1, 1, 1, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 1, 1],
[1, 0, 0, 1, 0, 0, 0, 1, 0, 0],
[0, 1, 0, 0, 1, 0, 0, 1, 0, 0] ]
Siguiente lección
Búsqueda en anchura
Listas de adyacencia
Representar un grafo con listas de adyacencia
combina las matrices de adyacencia con listas de
aristas. Para cada vértice i, almacena un arreglo de
los vértices adyacentes a él. Típicamente tenemos
un arreglo de ∣V ∣ listas de adyacencia, una lista de
adyacencia por vértice. Aquí está una
representación de una lista de adyacencia del grafo
de la red social:
CIENCIAS DE LA
COMPUTACIÓN ALGORITMOS
Representación de grafos
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 5/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Practica: Cuestionario:
describir grafos [ [1, 6, 8],
[0, 4, 6, 9],
[4, 6],
Representar grafos [4, 5, 8],
[1, 2, 3, 5, 9],
[3, 4],
Practica: Cuestionario: [0, 1, 2],
representar grafos [8, 9],
[0, 3, 7],
[1, 4, 7] ]
Desafío: almacena un
grafo
CIENCIAS DE LA
tener hasta ∣V ∣ − 1 vértices, las listas de
COMPUTACIÓN ALGORITMOS adyacencia para un grafo no dirigido en total
Representación de grafos contienen 2∣E∣ elementos. ¿Por qué 2∣E∣? Cada
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 7/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Practica: Cuestionario:
representar grafos
Desafío: almacena un
grafo
Este contenido es una colaboración de los
profesores de Dartmouth Computer Science
Siguiente lección
Búsqueda en anchura Thomas Cormen y Devin Balkcom, con el equipo de
contenidos de computación de Khan Academy. El
contenido está bajo licencia CC-BY-NC-SA.
CIENCIAS DE LA
COMPUTACIÓN ALGORITMOS
¿Sabes inglés? Haz clic aquí para ver más discusiones en el sitio en inglés
Representación de grafos de Khan Academy.
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 8/9
20/11/2016 Representar grafos | Representación de grafos | Algoritmos | Ciencias de la computación | Khan Academy
Describir grafos
Cuestionario: describir grafos
Cuestionario: representar grafos
Practica: Cuestionario:
describir grafos
ACERCA DE
Representar grafos
APOYO TUTORÍA BOLSA DE INTERNACIONAL
CIENCIAS DE LA
COMPUTACIÓN ALGORITMOS
Representación de grafos
https://es.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs 9/9