Algoritmos em Grafos  |  Livros  |  WWW  |  Índice de Termos

 

Bicoloração de vértices

Quando só dispomos de duas cores, o problema da coloração de vértices de um grafo não-dirigido é simples. O algoritmo que resolve a bicoloração é útil e importante.

Um grafo não-dirigido é bicromático (ou bipartido) se admite uma coloração dos vértices com não mais que 2 cores.  (Grafos bicormáticos são usualmente desenhados de modo que os vértices de uma das cores fiquem alinhados na parte superior da figura e os da outra cor fiquem alinhados na parte inferior da figura.)

É fácil provar que um grafo é bicromático:  basta exibir uma bicoloração dos vértices!  Mas como é possível provar que um grafo não é bicromático?  É óbvio que um grafo dotado de ciclo de comprimento ímpar (1,3,5, etc.) não é bicromático. É menos óbvio (mas não menos verdade) que a vale a recíproca. Resumindo:

Teorema:  Um grafo é bicromático se e somente se não tem ciclo de comprimento ímpar.

Portanto, para provar que um dado grafo não é bicromático, basta exibir um ciclo ímpar no grafo.

Exercícios

  1. [Importante]  Escreva uma função C que receba um grafo não-dirigido e devolva 1 se o grafo é bicromático e 0 em caso contrário. Além disso, no primeiro caso, a função deve marcar cada vértice com uma de duas cores. 

  2. [Continuação]  Faça uma versão mais completa do exercício anterior: se o grafo não é bicromático então a função deixa marcado um ciclo ímpar z, z–>próx, z–>próx–>próx, . . . , z

Exercícios

  1. [Desafio]  Escreva uma função C que pinte os vértices de um grafo dado com 3 cores ou menos ou diga que o grafo não admite tal coloração.

 


URL of this site:  www.ime.usp.br/~pf/algoritmos_em_grafos/
Last modified: Wed Oct 7 13:36:29 BRT 2009
Paulo Feofiloff
IME-USP