1
제거 min 함수가 호출 된 후 Java에서 배열 기반 최소 힙을 "heapify"하는 방법 (이 작업은 인덱스 1의 요소를 가져 와서 제거한 다음 배열의 마지막 항목으로 바꿉니다). 제거 작업이 완료된 후 배열을 다시 최소 힙에 넣는 방법에 대해 혼란 스럽습니다.min을 제거한 후 배열 기반 min 힙을 "heapify"하는 방법은 무엇입니까?
인덱스 0은 항상 힙 최소 배열에서 비어 있습니다. 부모 색인은 i/2이고, 오른쪽 자식은 2i + 1이고, 왼쪽 자식은 2i입니다.
도움이 될 것입니다, 고마워요!
그래도 heapify 코드는 어떻게 생겼을까요? – Vimzy
힙을 빌드 할 때 사용하는 것과 동일한 heapify()입니다. – isklenar
사실, 힙을 만들 때 사용한 heapify는 부모를 비교 자로 사용하므로 부모가 없으므로 새 인덱스 1 요소를 비교하면 어떨까요? 그것이 저를 혼란스럽게합니다. – Vimzy