Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula02 - Representacao PDF
Aula02 - Representacao PDF
1 2 3 4 5 6
1 1 1
1 2 3 2 1
3 1 1
4 1
4 5 6
5 1
6
Matriz de Adjacências - Implementação
• Implementação das operações do TAD utilizando uma
matriz de adjacências:
1 2
3
5 4
1 2 5 /
2 1 5 3 4 /
3 2 4 /
4 2 5 3 /
5 4 1 2 /
Lista de Adjacências
1 2 3
4 5 6
1 2 4 /
2 5 /
3 6 5 /
4 2 /
5 4 /
6
Lista de Adjacências - Características
• Os vértices de uma lista de adjacência são em geral
armazenados em uma ordem arbitrária.
1 2
3
5 4
1 2 3
4 5 6
Lista de Adjacências
• Existem diversas possibilidades para se implementar as
listas de adjacências:
• Vetor com listas ligada;
• Vector com listas ligadas;
• Vector de vectors.
• InicializaGrafo(Grafo, n):
• Percorrer o vetor e atribuir NULL a cada posição.
• LiberaGrafo(Grafo):
• Percorrer todas as listas ligadas liberando o espaço utilizado por
todos os nós.
Lista de Adjacências – Implementação
com Listas Ligadas
• ExisteAdj(v, Grafo):
• Verificar se a posição referente ao vértice v do vetor possui valor
NULL.
• PrimeiroAdj(v, Grafo):
• Retorna um ponteiro para o primeiro nó da lista de adjacência de v.
• ProxAdj(v, p, Grafo):
• Avança uma posição na lista de adjacência de v a partir do ponteiro p.