문제를 요약하면..
현재 노드가 이미 처리된 노드인지 check하는 조건문으로, 방문한적이 있다면 거리비용을 바꿀 필요가 없으므로 반복문을 skip (continue) 한다.
-나는 dijkstra 함수 파라미터에 start와 end를 추가했다. (다른 정답 풀이(시도2)와 다른점이다.)
dijkstra(start) - start 인자만 갖으며 distance 리스트로 반환하는 함수
마지막 반복문에서 최댓값 찾는 방식이 다름
이렇게 start 인자만 갖고 distance 리스트를 반환하는 함수로 코딩해도 맞다.
시도1, 시도2 알고보면 똑같은 코드이지만 살짝 다르게 해보았다.
나는 end 인자를 추가하여 바로 찾고하자는 요소를 반환하도록 코딩해보았다.
그 이유는 이 문제는 (출발 포인트에서 목표노드(X)까지 거리) + (목표노드(X)에서 출발했던 노드까지 거리)를 모두 구한 후, 최댓값을 찾아야 하기 때문에 바로 start~end 노드의 거리를 반환하도록 코딩했다.
※참고※
익스트라 알고리즘 개념 참고
https://www.youtube.com/watch?v=acqm9mM1P6o