O problema do caminho mais longo é NP-hard. A prova (típica?) Baseia-se na redução do problema do caminho hamiltoniano (que é NP-completo). Observe que aqui o caminho é considerado simples (nó). Ou seja, nenhum vértice pode ocorrer mais de uma vez no caminho. Obviamente, também é simples de borda (nenhuma borda ocorrerá mais de uma vez no caminho).
E se abandonarmos o requisito de encontrar um caminho simples (nó) e continuarmos a encontrar um caminho simples (borda). À primeira vista, uma vez que encontrar uma trilha euleriana é muito mais fácil do que encontrar um caminho hamiltoniano, pode-se ter alguma esperança de que encontrar o caminho mais longo seja mais fácil do que encontrar o caminho mais longo. No entanto, não consigo encontrar nenhuma referência que comprove isso, muito menos uma que forneça um algoritmo.
Observe que estou ciente do argumento aqui: /programming/8368547/how-to-find-the-longest-heaviest-trail-in-an-undirected-weighted-graph No entanto, o argumento parece falho em sua forma atual, pois mostra basicamente que você pode resolver o caso simples de borda resolvendo o caso simples de nó em um gráfico diferente (portanto, a redução é inversa). Não está claro que a redução possa ser facilmente alterada para funcionar da outra maneira. (Ainda assim, mostra que pelo menos o problema de trilhas mais longas não é mais difícil do que o problema de trilhas mais longas.)
Existem resultados conhecidos para encontrar trilhas mais longas (caminhos simples)? Complexidade (classe)? Algoritmo (eficiente)?