Some doubt in BuildMaxHeap
krishnaexplore opened this issue · 1 comments
krishnaexplore commented
seems not working BuildHeap
https://github.com/ramswaroop/Algorithms-and-Data-Structures-in-Java/blob/master/src/me/ramswaroop/common/MaxHeap.java#L49:L50
if we do some change here it is working
leftIndex = 2 * i ;
rightIndex = 2 * i + 1;
for input {5,12,64,1,37,90,91,97};
output should be : [97, 91, 90, 12, 37, 64, 5, 1]
rampatra commented
The output from the code buildMaxHeap()
is [97, 37, 91, 12, 5, 90, 64, 1]
is correct as per my understanding. What makes you think otherwise?
Note: Max heap is a heap with root greater than or equal to left and right children (except for leaf nodes) and this property is satisfied in the output [97, 37, 91, 12, 5, 90, 64, 1]
.