adfsfsf   5년 전

아래와 같은 코드에서, 우선순위 큐를 굳이 그대로 둬야 할까요? 그냥 큐 배열을 만드는 게 더 나을까요?

seico75   5년 전

코드는 복잡하고 질문은 짧군요. 

이 코드와 질문의 핵심은 push 할때 복사해서 들어가서 node 를 조작한 것이 maps 에 반영이 안되는 것이 아닌가 합니다.

일단 질문하신 것에 대한 의견은...

  . priority_queue 는 유지하되 node 인 index만 넣고 

  . cmp 함수에서 node[index_a], node[index_b] 를 비교하게 하고

  . while loop 에서는 node 를 수정하면 되지 않을까요?

그리고 54번줄에서 new 하지 말고 그냥 변수 잡고 push 해도 되지 않을까요. leak 도 없고.. (저 할당은 다 leak 이 될 것 같습니다.)

adfsfsf   5년 전

VS는 leak이 없어서 신경 안 쓰고 있었는데... 코드가 길어지면 신경써야겠군요. 제가 다른 예제들을 더 살피고 와야겠군요. 감사합니다.

댓글을 작성하려면 로그인해야 합니다.