powerlsj7   2년 전

밑에 while (current * 2 + 2 < q.Count) 이부분이 

우선수위 큐 pop할때 자식 탐색하는 조건인데 저 조건대로 해도 채점 통과합니당.

저 코드를 가지고 다음 문제인 가운데를 말해요를 풀면 저 조건이 틀려서 틀립니다로 나옵니다.

저 조건이 잘못된 이유는 자식이 좌측 우측 2개일때만 들어오게 되어서 왼쪽자식만 있는 경우 무시하기 때문에 큐가 2개면 정렬을 안해버려서 최대값이나 최소값이 안나오거든요.

덕분에 우선순위 큐는 제대로 공부한 것 같습니다. 감사합니다 ㅎㅎ;;

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