4개의 댓글이 있습니다.
-
-
hyunhwan -
https://imgur.com 와 같은 이미지 업로드 사이트를 이용해 올리신 다음 링크를 걸거나 markdown 문법을 이용해서 아래 첨부하시면 됩니다.
7년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
lsh9034
아 문제에 대한 질문은 아니구요... 제가 공부를 하다가 잘 이해가 되지 않는데 물어볼 곳이 정말 없더라구요.. 여기에 알고리즘을 다 씹어먹는다는 분들이 많다고 들어 질문을 하려고 합니다. 우선순위 큐를 쓸 때 시간복잡도가 ElogV가 된다고 하는데요. 제가 그림판에 그려가면서 최악을 생각을 해보았는데 우선순위 큐에서 최대 E번을 팝하고 거기서 다시 인접한 부분들을 탐색하기 때문에 logV뒤에 E가 왜 붙는지는 알겠습니다. 근데 정점을 정하고 인접한 간선을 탐색해야하잖아요. 인접행렬말고 벡터나 리스트로 짜도 최대 V번 돌게 되어있고 최악의 경우 V번 돌 때마다 우선순위 큐에 넣는다고 가정하면 직관적으로 최악을 생각해보면 logE라고 생각됩니다. 그렇게 되면 E*V*logE인데 logE가 logV^2가 비스무리 해서 logV가 되는건 알고 있습니다. 그래도 중간에 V가 곱해져 있어서 ElogV와는 다르게 되더라구요.. 이 부분에 대한 명쾌한 답변 부탁드립니다. 제가 그렸던 그림판 첨부해보겠습니다.
7년 전