# Algorithm: Heapify # Type: Heap, Utility Function # Time Complexity: O(log n) # Space Complexity: O(1) function heapify(arr, n, i): largest = i left = 2 * i + 1 right = 2 * i + 2 if left < n and arr[left] > arr[largest]: largest = left if right < n and arr[right] > arr[largest]: largest = right if largest != i: swap(arr[i], arr[largest]) heapify(arr, n, largest)