Algoritmos para Grafos | Índice
Este capítulo trata de duas propriedades básicas
de árvores geradoras de grafos
não-dirigidos.
As propriedades são a base das condições de otimalidade
usadas pelos algoritmos que constroem árvores geradoras de custo mínimo
(MSTs).
Uma subárvore
de um grafo não-dirigido G
é qualquer subgrafo
de G que seja uma
árvore
(isto é, um grafo não-dirigido conexo sem circuitos).
Uma subárvore de um grafo não-dirigido G é
geradora
(= spanning)
se contém todos os vértices de G.
(Quem sabe subárvore abrangente
,
ou esqueleto
,
seria um nome melhor.)
É comum suprimir o sub
e usar a expressão
árvore geradora de G.
Como árvores são conexas, todo grafo não-dirigido dotado de árvore geradora é conexo. Reciprocamente, todo grafo não-dirigido conexo tem (pelo menos) uma árvore geradora. Toda árvore geradora de um grafo não-dirigido com V vértices tem exatamente V−1 arestas.
É fácil calcular uma árvore geradora de um grafo não-dirigido conexo: a busca em profundidade e a busca em largura fazem isso. Mais precisamente, qualquer das duas buscas calcula uma árvore radicada que contém um dos dois arcos de cada aresta de uma árvore geradora do grafo.
- 1 1 - - 1 1 1 1 - - - - - - 1 1 - - - - - - - - - - - 1 1 - - - - - 1 - 1 1 1 1 - - 1 1 - - - 1 - - - 1 - - 1
O conceito de corte é muito útil no estudo de árvores geradoras de grafos não-dirigidos. Informalmente, um corte é o conjunto de arestas que liga alguma parte do grafo ao resto.
Para uma definição mais formal, começamos com o conceito de leque. O leque de um conjunto X de vértices de um grafo não-dirigido é o conjunto de todas as arestas que têm uma ponta em X e outra no complemento de X. (O complemento de X é o conjunto
de todos os vértices do grafo que não estão em X.) É claro que o leque de X é igual ao leque de . Se X é trivial, o leque de X é vazio. (Um conjunto X de vértices é trivial se X é vazio ou é vazio.)Um corte (= cut) é o leque de algum conjunto não-trivial X de vértices. Dizemos que X é uma margem do corte. É claro que
também é uma margem do corte.Exemplo A. Considere o grafo não-dirigido cujos arestas são 0-1 0-2 2-1 3-5 4-5 . Cada linha da seguinte tabela descreve um corte nesse grafo (coluna do meio) e suas margens (primeira e última colunas). O terceiro corte da tabela é vazio (embora suas margens não sejam vazias).
0 0-1 0-2 1 2 3 4 5 2 3 0-2 2-1 3-5 0 1 4 5 0 1 2 3 4 5 0 1 2 5 3-5 4-5 3 4
0-1 0-2 1-3 1-4 2-3 2-4 3-5 4-5
X e. são cortes de G
A manipulação de árvores geradoras de grafos não-dirigidos
usa duas operações básicas:
uma acrescenta uma aresta a uma árvore geradora
e assim cria um circuito;
outra remove uma aresta da árvore geradora
e assim define um corte.
Essas operações dão origem a duas propriedades de
substituição de arestas
(= exchange properties).
Primeira propriedade. Seja T uma árvore geradora de um grafo não-dirigido G. Para qualquer aresta e de G, vamos denotar por T + e o grafo que se obtém quando e é inserida em T. Para qualquer aresta t de T, vamos denotar por T − t o grafo que se obtém quando t é removida de T.
Propriedade dos circuitos (ou Propriedade insere-remove): Seja T uma árvore geradora de um grafo não-dirigido G. Para qualquer aresta e de G que não esteja em T, o grafo T + e tem um único circuito. Para qualquer aresta t desse circuito, o grafo T + e − t é uma árvore geradora de G.
O único circuito em T + e é conhecido como circuito fundamental de e relativo a T. (Estamos abusando um pouco da ideia de igualdade e supondo que dois circuitos com o mesmo conjunto de arestas são iguais.)
Exemplo B. Seja T a árvore geradora definida pelas arestas escuras da figura. Seja e a aresta 1-3. O circuito fundamental de e é 1-3-2-0-7-1. Para qualquer aresta t desse circuito, T + e − t é uma árvore geradora.
Segunda propriedade. Seja T uma árvore geradora de um grafo não-dirigido G. Para toda aresta t de T, as duas componentes conexas de T − t definem um corte em G: trata-se do conjunto de todas as arestas de G que têm uma ponta em uma das componentes conexas de T − t e outra ponta na outra componente conexa. Diremos que esse é o corte determinado por T − t ou corte fundamental de t relativo a T.
Propriedade dos cortes (ou Propriedade remove-insere): Seja T uma árvore geradora de um grafo não-dirigido G. Para qualquer aresta t de T e qualquer aresta e do corte determinado por T − t, o grafo não-dirigido T − t + e é uma árvore geradora de G.
Exemplo C. Seja T a árvore geradora definida pelas arestas escuras da figura. Seja t a aresta 0-2. O corte fundamental de t é o conjunto de arestas 1-3 1-2 7-2 0-2 0-6 4-6. Se e é uma qualquer dessas arestas então T − t + e é uma árvore geradora.
corte fundamental de uma aresta tse refere a um corte em T ou em G? Analogamente, o
circuito fundamental de uma aresta eé um circuito em T ou em G?