35

Exercícios resolvidos: Algoritmos - Teoria e Prática - 3ª Ed. 2012

Thomas CormenIBSN: 9788535236996

Elaborado por professores e especialistas

Passo 1 de 4keyboard_arrow_downkeyboard_arrow_up

No problema do caminho simples mais longo, um caminho contém todos os vértices do grafo sem conter nenhum ciclo. Consideremos como o caminho mais longo e como o peso de aresta. Então a distância do caminho mais longo é:

Passo 2 de 4keyboard_arrow_downkeyboard_arrow_up

Consideremos um grafo com vértices e arestas. Declaramos um vetor para armazenar o próximo vértice no caminho mais longo. Consideremos o seguinte algoritmo:

Imagem 1

Passo 3 de 4keyboard_arrow_downkeyboard_arrow_up

O grafo do subproblema é basicamente o mesmo que o grafo . A diferença entre eles está no número de vértices no grafo , que é menor (1 vértice a menos) que em . No algoritmo acima, temos um laço “for” que é usado para determinar o caminho mais longo. Esse caminho visita todos os vértices, checando o vértice adjacente. Em cada iteração do laço a função é chamada recursivamente, e o caminho mais longo inclui todas as arestas do grafo. Assim, o tempo de execução do algoritmo é .

Passo 4 de 4keyboard_arrow_downkeyboard_arrow_up

Temos, portanto, o algoritmo desejado, com tempo de execução .

Navegar por capítulo

Aprenda agora com os exercícios mais difíceis

R$29,90/mês

Cancele quando quiser, sem multa

Aproveite também

  • check Exercícios passo a passo
  • check Resumos por tópicos
  • check Disciplinas ilimitadas
  • check Ferramentas para otimizar seu tempo