𝖂𝖎ƙ𝖎𝖊

Matriz de adjacência: mudanças entre as edições

imported>Nallimbot
m (Bot: Adicionando: fa:ماتریس مجاورت)
imported>Kaktus Kid
(Ajustes)
 
(31 revisões intermediárias por 23 usuários não estão sendo mostradas)
Linha 1: Linha 1:
Uma '''matriz de adjacência''' é uma das formas de se representar um [[grafo]].
Uma '''matriz de adjacência''' é uma das formas de se representar um [[Teoria dos grafos|grafo]].


Dado um grafo G com ''n'' [[vértice]]s, podemos representá-lo em uma [[Matriz (matemática)|matriz]] ''n'' x ''n'' M.
Dado um grafo ''G'' com ''n'' [[vértice]]s, podemos representá-lo em uma [[Matriz (matemática)|matriz]] ''n'' x ''n'' ''A(G)=''[''a<sub>ij</sub>''] (ou simplesmente ''A'').
A definição precisa das entradas da matriz varia de acordo com as propriedades do grafo que se
A definição precisa das entradas da matriz varia de acordo com as propriedades do grafo que se
deseja representar, porém de forma geral o valor m<sub>ij</sub> guarda informações sobre como os
deseja representar, porém de forma geral o valor ''a<sub>ij</sub>'' guarda informações sobre como os
vértices v<sub>i</sub> e v<sub>j</sub> estão relacionados (isto é, informações sobre a
vértices ''v<sub>i</sub>'' e ''v<sub>j</sub>'' estão relacionados (isto é, informações sobre a
''adjacência'' de v<sub>i</sub> e v<sub>j</sub>).
adjacência de ''v<sub>i</sub>'' e ''v<sub>j</sub>'').


Para representar um grafo não direcionado, simples e sem pesos nas arestas, basta que as entradas
Para representar um grafo não direcionado, simples e sem pesos nas arestas, basta que as entradas
m<sub>ij</sub> da matriz M contenham 1 se v<sub>i</sub> e v<sub>j</sub> são adjacentes e 0 caso
''a<sub>ij</sub>'' da matriz ''A'' contenham 1 se ''v<sub>i</sub>'' e ''v<sub>j</sub>'' são adjacentes e 0 caso
contrário. Se as arestas do grafo tiverem pesos, m<sub>ij</sub> pode conter, ao invés de 1 quando
contrário. Se as arestas do grafo tiverem pesos, ''a<sub>ij</sub>'' pode conter, ao invés de 1 quando
houver uma aresta entre v<sub>i</sub> e v<sub>j</sub>, o peso dessa mesma aresta.
houver uma aresta entre ''v<sub>i</sub>'' e ''v<sub>j</sub>'', o peso dessa mesma aresta.


[[Imagem:6n-graph2.svg|200px|right]]
[[Ficheiro:6n-graph2.svg|200px|right]]
Por exemplo, a matriz de adjacência do grafo ao lado é  
Por exemplo, a matriz de adjacência do grafo ao lado é


<math>\begin{bmatrix}
<math>A=\begin{bmatrix}
1 & 1 & 0 & 0 & 1 & 0\\
1 & 1 & 0 & 0 & 1 & 0\\
1 & 0 & 1 & 0 & 1 & 0\\
1 & 0 & 1 & 0 & 1 & 0\\
Linha 24: Linha 24:
\end{bmatrix}</math>
\end{bmatrix}</math>


Em grafos não direcionados, as matrizes de adjacência são [[matriz simétrica|simétricas]] ao longo da [[diagonal de uma matriz|diagonal principal]]
- isto é, a entrada ''a<sub>ij</sub>'' é igual à entrada ''a<sub>ji</sub>''. Matrizes de adjacência de grafos
direcionados, no entanto, não são assim. Num [[grafo|digrafo]] sem pesos, a entrada ''a<sub>ij</sub>''
da matriz é 1 se há um arco de ''v<sub>i</sub>'' para ''v<sub>j</sub>'' e 0 caso contrário.
Um resultado interessante ocorre quando consideramos a '''potência''' ''k'' da matriz de adjacência, ou seja, o produto
:<math>    {{A^k = } \atop {\ }} {{\underbrace{A \times \cdots \times A}} \atop k}.</math>
Antes de apresentar o resultado, vamos definir um '''percurso''' em um grafo ''G''. Um percurso corresponde a uma sequência, finita e não vazia, de vértices do grafo, na qual (''v<sub>0</sub>, v<sub>1</sub>, ..., v<sub>i</sub>, ..., v<sub>k-1</sub>, v<sub>k</sub>'') é tal que, para todo 0 ''≤ i ≤ k-1'', ''v<sub>i</sub>'' e ''v<sub>i+1</sub>'' são vértices adjacentes. Os vértices ''v<sub>0</sub>'' e ''v<sub>k</sub>'' são chamados, respectivamente, de origem e fim do percurso, enquanto ''v<sub>1</sub>, v<sub>2</sub>, ..., v<sub>k-1</sub>'' são os vértices internos ao caminho. O inteiro ''k'' é o comprimento do percurso. Um '''caminho''' em um digrafo é um percurso no qual todos os arcos estão orientados no sentido origem do percurso-fim do percurso.


Se ''A'' é a matriz de adjacência de um grafo ''G'' com conjunto de vértices dado por ''V(G) = ''{''v<sub>1</sub>, v<sub>2</sub>, ..., v<sub>n</sub>''}, então a entrada (''i,j'') de ''A''<sup>''k''</sup>, com ''k'' ≥ 1, corresponde ao número de percursos (distintos) de comprimento ''k'' existentes entre os vértices ''v<sub>i</sub>'' e ''v<sub>j</sub>''.
Pode-se mostrar esse resultado por [[Indução matemática|indução]]. Quando ''k'' = 1, o resultado segue de modo natural da definição de matriz de adjacência, uma vez que existe um percurso de comprimento 1 entre o vértice ''v<sub>i</sub>'' e o vértice ''v<sub>j</sub>'' se e só se {''v<sub>i</sub>, v<sub>j</sub>''} é uma aresta de ''G''. Seja
:<math>{A^{k-1}= \left[a_{ij}^{(k-1)}\right]},</math>
e assuma que ''a<sub>ij</sub> <sup>(k-1)</sup>'' é o número de percursos distintos de comprimento ''k -'' 1 entre os vértices ''v<sub>i</sub>'' e ''v<sub>j</sub>'' em ''G''. Considerando
:<math>{A^k= \left[a_{ij}^{(k)}\right]},</math>
e como ''A''<sup>''k''</sup> = ''A''<sup>''k-1''</sup> . ''A'', temos que
:<math>{{a_{ij}^{(k)} =} {\sum_{p=1}^{n} a_{ip}^{(k-1)} a_{pj}}}.</math>
Observe que, na expressão acima, o elemento ''a<sub>ij</sub> <sup>(k)</sup>'' é obtido multiplicando-se os elementos da linha ''i'' de ''A''<sup>''k-1''</sup> pelos respectivos elementos da coluna ''j'' de ''A'' e, em seguida, efetuando-se a soma dos produtos obtidos.
Todo percurso entre ''v<sub>i</sub>'' e ''v<sub>j</sub>'' de comprimento ''k'' em ''G'' consiste de um percurso entre ''v<sub>i</sub>'' e ''v<sub>p</sub>'' de comprimento ''k -'' 1, onde ''v<sub>p</sub>'' é adjacente a ''v<sub>j</sub>'', seguido da aresta {''v<sub>p</sub>, v<sub>j</sub>''} e do vértice ''v<sub>j</sub>''. O resultado decorre da hipótese de indução e da última equação.
O resultado permanece válido para digrafos, fazendo-se as devidas adequações: trocando arestas por arcos e percursos por caminhos.
Para ilustrar o resultado acima, observe as potências 2 e 3 da matriz de adjacência ''A'' correspondente ao grafo da figura:
<math>A^2=\begin{bmatrix}
3 & 2 & 1 & 1 & 2 & 0\\
2 & 3 & 0 & 2 & 1 & 0\\
1 & 0 & 2 & 0 & 2 & 1\\
1 & 2 & 0 & 3 & 0 & 0\\
2 & 1 & 2 & 0 & 3 & 1\\
0 & 0 & 1 & 0 & 1 & 1\\
\end{bmatrix},
A^3=\begin{bmatrix}
7 & 6 & 3 & 3 & 6 & 1\\
6 & 3 & 5 & 1 & 7 & 2\\
3 & 5 & 0 & 5 & 1 & 0\\
3 & 1 & 5 & 0 & 6 & 3\\
6 & 7 & 1 & 6 & 3 & 0\\
1 & 2 & 0 & 3 & 0 & 0\\
\end{bmatrix}</math>.
O elemento (4,6) de ''A<sup>2</sup>'' indica que não há nenhum caminho de comprimento 2 ligando os vértices 4 e 6 do grafo acima. Por outro lado, o elemento (4,6) de ''A<sup>3</sup>'' indica que existem 3 caminhos de comprimento 3 ligando os vértices 4 e 6. São eles: (4,3,4,6), (4,5,4,6) e (4,6,4,6).
==Bibliografia==
*CHARTRAND, G., LESNIAK, L. ''Graphs & Digraphs''. Editora CRC Press, 2004.
==Ver também==
*[[Teoria dos grafos]]
*[[Matriz de incidência]]
*[[Lista de adjacência]]


Em grafos não direcionados, as matrizes de adjacência são [[matriz simétrica|simétricas]] ao longo da [[diagonal de uma matriz|diagonal principal]]
- isto é, a entrada m<sub>ij</sub> é igual à entrada m<sub>ji</sub>. Matrizes de adjacência de grafos
direcionados, no entanto, não são assim. Num [[grafo|digrafo]] sem pesos, a entrada m<sub>ij</sub>
da matriz é 1 se há um arco ''de'' v<sub>i</sub> ''para'' v<sub>j</sub> e 0 caso contrário.


{{esboço-matemática}}
{{Classes de matriz}}
{{Esboço-matemática}}


{{DEFAULTSORT:Matriz Adjacencia}}
[[Categoria:Teoria dos grafos]]
[[Categoria:Teoria dos grafos]]
[[Categoria:Matrizes]]
[[Categoria:Matrizes]]
 
[[Categoria:Estruturas de dados]]
[[de:Repräsentation von Graphen im Computer]]
[[en:Adjacency matrix]]
[[es:Matriz de adyacencia]]
[[fa:ماتریس مجاورت]]
[[fr:Matrice d'adjacence]]
[[hu:Szomszédsági mátrix]]
[[it:Matrice delle adiacenze]]
[[ja:隣接行列]]
[[ko:인접 행렬]]
[[nl:Bogenmatrix]]
[[pl:Macierz sąsiedztwa]]
[[ur:ملمس مصفوفہ]]
[[vi:Ma trận kề]]
[[zh:邻接矩阵]]

Edição atual tal como às 15h57min de 6 de janeiro de 2017

Uma matriz de adjacência é uma das formas de se representar um grafo.

Dado um grafo G com n vértices, podemos representá-lo em uma matriz n x n A(G)=[aij] (ou simplesmente A). A definição precisa das entradas da matriz varia de acordo com as propriedades do grafo que se deseja representar, porém de forma geral o valor aij guarda informações sobre como os vértices vi e vj estão relacionados (isto é, informações sobre a adjacência de vi e vj).

Para representar um grafo não direcionado, simples e sem pesos nas arestas, basta que as entradas aij da matriz A contenham 1 se vi e vj são adjacentes e 0 caso contrário. Se as arestas do grafo tiverem pesos, aij pode conter, ao invés de 1 quando houver uma aresta entre vi e vj, o peso dessa mesma aresta.

6n-graph2.svg

Por exemplo, a matriz de adjacência do grafo ao lado é

Em grafos não direcionados, as matrizes de adjacência são simétricas ao longo da diagonal principal - isto é, a entrada aij é igual à entrada aji. Matrizes de adjacência de grafos direcionados, no entanto, não são assim. Num digrafo sem pesos, a entrada aij da matriz é 1 se há um arco de vi para vj e 0 caso contrário.

Um resultado interessante ocorre quando consideramos a potência k da matriz de adjacência, ou seja, o produto

Antes de apresentar o resultado, vamos definir um percurso em um grafo G. Um percurso corresponde a uma sequência, finita e não vazia, de vértices do grafo, na qual (v0, v1, ..., vi, ..., vk-1, vk) é tal que, para todo 0 ≤ i ≤ k-1, vi e vi+1 são vértices adjacentes. Os vértices v0 e vk são chamados, respectivamente, de origem e fim do percurso, enquanto v1, v2, ..., vk-1 são os vértices internos ao caminho. O inteiro k é o comprimento do percurso. Um caminho em um digrafo é um percurso no qual todos os arcos estão orientados no sentido origem do percurso-fim do percurso.

Se A é a matriz de adjacência de um grafo G com conjunto de vértices dado por V(G) = {v1, v2, ..., vn}, então a entrada (i,j) de Ak, com k ≥ 1, corresponde ao número de percursos (distintos) de comprimento k existentes entre os vértices vi e vj.

Pode-se mostrar esse resultado por indução. Quando k = 1, o resultado segue de modo natural da definição de matriz de adjacência, uma vez que existe um percurso de comprimento 1 entre o vértice vi e o vértice vj se e só se {vi, vj} é uma aresta de G. Seja

e assuma que aij (k-1) é o número de percursos distintos de comprimento k - 1 entre os vértices vi e vj em G. Considerando

e como Ak = Ak-1 . A, temos que

Observe que, na expressão acima, o elemento aij (k) é obtido multiplicando-se os elementos da linha i de Ak-1 pelos respectivos elementos da coluna j de A e, em seguida, efetuando-se a soma dos produtos obtidos.

Todo percurso entre vi e vj de comprimento k em G consiste de um percurso entre vi e vp de comprimento k - 1, onde vp é adjacente a vj, seguido da aresta {vp, vj} e do vértice vj. O resultado decorre da hipótese de indução e da última equação.

O resultado permanece válido para digrafos, fazendo-se as devidas adequações: trocando arestas por arcos e percursos por caminhos.

Para ilustrar o resultado acima, observe as potências 2 e 3 da matriz de adjacência A correspondente ao grafo da figura:

.

O elemento (4,6) de A2 indica que não há nenhum caminho de comprimento 2 ligando os vértices 4 e 6 do grafo acima. Por outro lado, o elemento (4,6) de A3 indica que existem 3 caminhos de comprimento 3 ligando os vértices 4 e 6. São eles: (4,3,4,6), (4,5,4,6) e (4,6,4,6).

Bibliografia

  • CHARTRAND, G., LESNIAK, L. Graphs & Digraphs. Editora CRC Press, 2004.

Ver também


Predefinição:Classes de matriz

Ícone de esboço Este sobre matemática é um esboço. Você pode ajudar a Wikipédia expandindo-o.

talvez você goste