現在、最大ヒープを実行しています。remove() メソッドを使用すると、より大きな子と交換することを理解しています。両方の子の優先順位が同じ場合はどうなりますか? 例えば
ケース 1:
ヒープ = [5,7,7,16,15]
5 を削除して 15 に置き換えると、右側に滴り落ちるので (これは間違っています)、左側に滴り落ちます。
しかし、私が持っている場合、同じロジックを使用して
ヒープ = [5,7,7,16,15,18]
左に垂れ下がると、有効なヒープではなくなります。
有効なヒープを確保するにはどうすればよいですか?