Exercise 6.2-4

What is the effect of calling MAX-HEAPIFY(\(A, i\)) for \(i > A.heap-size/2\)?

The procedure runs once and makes no changes to the heap. Specifically, when \(i > A.heap-size / 2\), \(i\) is a leaf (See Exercise 6.1-7) and so both our values for LEFT(\(i\)) and RIGHT(\(i\)) will exceed A.heap-size. This will cause all three if-checks to fail and the procedure terminates without calling itself.