해결된 질문
작성
·
307
답변 1
2
안녕하세요 :)
가중치가 1이라는 것은 두 정점 간의 거리가 1이라는 것을 의미합니다. 비유를 들어보자면 노드를 도시라고 생각하면 되고, 가중치는 그 도시들 간의 거리라고 생각하면 됩니다. 그래서 한 도시에서 다른 도시로 갈 때 항상 비용은 1이 된다는 것을 의미하고, 다른 의미로 "노드들 간에 이동하는 거리 혹은 비용은 동일하니 이것까지 고려할 필요는 없다" 정도로 정보를 제공한 것으로 보여요.
말씀하신 대로 가중치가 1이 아닌 경우에는 해당 가중치를 고려해서 계산해야 합니다. 이럴 때는 별도 구조체를 두기 보다는 graph라는 배열을 boolean 배열이 아닌 int 혹은 long 배열로 만드는 방식을 사용해요. 그래서 기존 boolean일 때는 "연결됐다 혹은 안됐다" 정보만 저장했다면, int 배열로 바꿀 경우 "연결됐을 때의 거리"를 배열 요소로 저장해두면 됩니다!
혹시 설명이 부족한 부분이 있으면 알려주세요!
오늘도 DFS 공부 화이팅입니다 :)
알기 쉽게 설명해주셔서 부족한 부분이 없네요~
감사합니다!!