Regras

Propaganda
Projectos da disciplina de Teoria dos Grafos
José Manuel de Castro Torres
Universidade Fernando Pessoa –2001/2002
Regras:





O projecto deverá ser elaborado individualmente ou em grupos de dois elementos;
Deverá ser entregue e apresentado oralmente (a não apresentação oral irá repercutir-se na nota final) até
ao último dia de aulas
Deverá ser desenvolvido em Java (sugestão: use o ambiente de desenvolvimento JBuilder4 ou o
JCreator v1.5);
Deverá ser entregue juntamente com um relatório explicativo do processo de desenvolvimento, manual
de utilização do programa, características do programa, limitações e desenvolvimentos possíveis;
A atribuição dos trabalhos aos grupos deve ser feita com conhecimento ao docente da cadeira e com a
maior brevidade possível, não sendo possível alterar posteriormente o tema do trabalho.
Descrição dos Projectos
Dada uma aplicação desenvolvida em Java já existente, pretende-se que estenda essa aplicação com
funcionalidades extra usando os conhecimentos e tópicos focados ao longo da disciplina de Teoria dos Grafos.
Entre as funcionalidades que poderá implementar tem-se as seguintes:
 Gerar um relatório com as principais características do Grafo (número de nós e de ramos, sequência dos
graus, número de componentes do grafo, se é grafo ou pseudo-grafo, etc.)
 Testar se o Grafo é bipartido
 Testar se o Grafo é completo
 Testar a existênia de n-ciclos
 Dados dois grafos em duas janelas:
o Testar se um grafo é subgrafo do outro
o Testar se os dois grafos são isomorfos
 Testar se um grafo é Euleriano
 Testar se um grafo é Hamiltoniano
 Apresentar a matriz de adjacência do grafo
 Calcular o caminho mais curto entre dois nós de um grafo pesado usando o algoritmo de Dijkstra
 Calcular a matriz de caminhos mais curtos usando o algoritmo de Floyd-Warshall
 Testar se o Grafo é Digrafo, e se for se é fortemente conexo
 Testar se o Grafo é uma rede dirigida (isto é, testar se é um Digrafo pesado)
 Se o grafo for uma rede dirigida com um nó inicio e um nó fim, calcular o caminho critico
 Verificar se um grafo conexo é uma árvore
 Calcular a “spanning tree” mínima de um grafo conexo
 Aplicar o algoritmo de “depth-first search” a um grafo para verificar se um grafo é conexo e calcular
uma sua “spanning tree”
 Testar se um grafo é planar
 Testar se dois grafo são homeomórficos
 Calcular o número cromático de um grafo
Download