- Pâmela Medeiros dos Santos
- Willieny Barbosa de Magalhães
Entrada: Vértice inicial, vértice final (opcional), grafo não direcionado em arquivo de texto no seguinte formato, sendo 'n' o número de vértices, 'm' o número de arestas e 'u v w' uma aresta entre os vértices 'u' e 'v' com peso 'w':
n m
u v w
u v w
u v w
...
Saída: Lista de distâncias mínimas entre o vértice inicial e os demais no seguinte formato, sendo 'i' o vértice e 'd' a distância mínima até ele a partir do vértice inicial:
i:d i:d i:d ...
Caso receba também o vértice final, a saída será apenas a distância mínima 'd' entre o vértice inicial e o final.
Caso receba ainda o parâmetro '-s', a saída será a sequência de arestas do menor caminho entre o vértice inicial e o vértice final:
(v0, v1) (v1, v2) ... (vn-1, vf)
Execução: Para compilar o programa e executar alguns exemplos, execute o comando make all
no diretório 'Djikstra'.
Entrada: Vértice inicial (opcional), vértice final (opcional), grafo direcionado em arquivo de texto no seguinte formato, sendo 'n' o número de vértices, 'm' o número de arestas e 'u v w' uma aresta que parte do vértice 'u' a 'v' com peso 'w':
n m
u v w
u v w
u v w
...
Saída: Matriz nxn das distâncias mínimas entre cada par de vértices, onde 'M[i][j]' é a menor distância partindo do vértice 'i' até o vértice 'j' (essa distância será 'INF', caso não exista um caminho que parte de 'i' até 'j'):
M[i][j] M[i][j] M[i][j] ...
M[i][j] M[i][j] M[i][j]
M[i][j] M[i][j] M[i][j]
...
Caso seja dado um vértice inicial, a saída será a lista de distâncias mínimas entre o vértice inicial e os demais no seguinte formato, sendo 'i' o vértice e 'd' a distância mínima até ele a partir do vértice inicial:
i:d i:d i:d ...
Caso receba também o vértice final, a saída será apenas a distância mínima 'd' entre o vértice inicial e o final.
Execução: Para compilar o programa e executar alguns exemplos, execute o comando make all
no diretório 'Floyd-Warshall'.
Entrada: Grafo não direcionado em arquivo .in no seguinte formato, sendo 'n' o número de vértices, 'm' o número de arestas, 'p' o vértice de partida e 'u v w' uma aresta que parte do vértice 'u' a 'v' com peso 'w':
n m
u v w
u v w
u v w
...
Saída: A saída será a lista de distâncias mínimas entre o vértice inicial e os demais no seguinte formato, sendo 'i' o vértice e 'd' a distância mínima até ele a partir do vértice inicial:
i:d i:d i:d ...
Execução: Para compilar o programa e executar alguns exemplos, execute o comando make all
no diretório 'Bellman-Ford'.
Entrada: Grafo direcionado em arquivo .in no seguinte formato, sendo 'n' o número de vértices, 'm' o número de arestas, 'p' o vértice de partida, 'c' o vértice de chegada e 'u v w' uma aresta que parte do vértice 'u' a 'v' com peso 'w':
n m
u v w
u v w
u v w
...
Saída: A saída resulta no fluxo máximo entre os vértices 'p' e 'c' no seguinte formato, sendo 'm' o fluxo máximo:
Fluxo máximo entre os vértices p e c: m
Execução: Para compilar o programa e executar alguns exemplos, execute o comando make all
no diretório 'Fulkerson-Ford'