Heapify
ID: 130; medium
Solution 1 (Java)
public class Solution {
/*
* @param A: Given an integer array
* @return: nothing
*/
public void heapify(int[] A) {
for (int i = 0; i < A.length; i++) {
siftUp(A, i);
}
}
private void siftUp(int[] A, int k) {
while (k != 0) {
int pIndex = (k - 1) / 2;
if (A[k] > A[pIndex])
break;
int temp = A[k];
A[k] = A[pIndex];
A[pIndex] = temp;
k = pIndex;
}
}
}Notes
Solution 2 (Java)
Notes
Last updated