Ir para o conteúdo

CCT-UFCA/Ciência da Computação/Teoria dos Grafos/Grafos Hamiltonianos:

De Wikiversidade

Definições fundamentais

[editar | editar código]

Definição: Um caminho Hamiltoniano de um grafo G é um caminho que contém todos os vértices de G. Similarmente, um ciclo Hamiltoniano de G é um ciclo que contém todos os vértices de G.

Definição: Um grafo G é Hamiltoniano se contém um ciclo Hamiltoniano.

Definição: O fecho Hamiltoniano de um grafo conexo G é o grafo obtido pela adição sucessiva de arestas entre vértices u e v não adjacentes e tal que d(u)+d(v)n.

Teoremas relacionados

[editar | editar código]

Teorema 1: Seja G um grafo conexo com pelo menos 3 vértices. Se G é Hamiltoniano, então SV(G):

ω(GS)|S|

Prova: Seja G Hamiltoniano e C=<v1,v2,...,vn> um ciclo Hamiltoniano de G. Seja SV(G) tal que |S|=k1.

Podemos observar naturalmente que ω(CS) é no máximo igual a k, que ocorre somente quando S não possui vértices adjacentes entre si. Como G possui mais arestas que o ciclo C, temos que ω(GS) é no máximo ω(CS), que é no máximo k=|S|.


Teorema de Dirac: Seja G um grafo simples com pelo menos 3 vértices e tal que δ(G)n2. Então G é Hamiltoniano.

Prova: Seja G simples, tal que V(G)3 e δ(G)n2 e suponha por absurdo que G não é Hamiltoniano.

Seja G, então, o grafo maximal em arestas que atende à premissa e tal que G não é Hamiltoniano. Sabemos que G não é completo, visto que se assim fosse, seria Hamiltoniano. Ou seja, existem vértices u e v não adjacentes em G. Pela maximalidade de G, temos que a adição de e=uv em G gera um grafo G que é Hamiltoniano, isto é, gera um ciclo Hamiltoniano C=<v1,v2,...,vn,v1>, tal que v1=u e vn=v. Sabemos que C contém a aresta e=uv adicionada, logo, C=Ce é um caminho Hamiltoniano em G.

Se existissem uma aresta uvi e uma aresta vi1v para algum 2in2, teríamos um ciclo hamiltoniano em G, formado pelo caminho de u a vi1 através do caminho Hamiltoniano C e a aresta viu. Logo, cada vizinho de u em C proíbe um vizinho de v, visto que se assim não fosse, formaríamos ciclos hamiltonianos em G. Assim, v possui no máximo n(n2+1) vizinhos, isto é, nn21<n2, o que é absurdo. Portanto, G não pode existir e o resultado vale.


Corolário do Teorema de Dirac: Seja G simples conexo com ao menos 3 vértices e tal que d(u)+d(v)n, para um par de vértices u e v não adjacentes. Então G é Hamiltoniano se e somente se G+uv é Hamiltoniano.

Prova (ida): Se G é Hamiltoniano, então claramente G+uv é Hamiltoniano.

Prova (volta): Se G+uv é Hamiltoniano, temos que existe um caminho Hamiltoniano P com extremidades u e v em G. Por argumentos análogos ao Teorema de Dirac, temos que deve existir uma aresta uvi e uma aresta vi1v, para algum 2in2. Logo, G é Hamiltoniano.