The Floyd sifting version of Heapify is based on the following adjustments: 1. Instead of comparing the three values at parent and two children, one simply compares the child values and swaps the parent with whichever of those is larger. 2. This eventually brings the original parent value down to a leaf node, and does so in very few comparisons (compared to the usual sifting done by Heapsort). 3. Then that original value (now at a leaf node) is sifted back up, swapping with its parent value as long as the parent value is smaller than it is. This also takes only a few comparisons, especially in the average case, where the original value will belong in one of the two lowest levels.