回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p><em>问题1</em></p>
<pre><code> 98
/ \
/ \
67 89
/ \ / \
/ \ / \
38 42 54 89
/ \
/ \
17 25
</code></pre>
<p>我想将97插入max heap[98,67,89,38,42,54,89,17,25]中(在列表中表示)。</p>
<p>据我所知,结果堆是[98,97,89,38,67,54,89,17,25,42]</p>
<pre><code> 98
/ \
/ \
97 89
/ \ / \
/ \ / \
38 67 54 89
/ \ |
/ \ |
17 25 42
</code></pre>
<p><em>问题2</em></p>
<p>我想对堆应用delete_max()两次[100,97,93,38,67,54,93,17,25,42]。</p>
<pre><code> 100
/ \
/ \
97 93
/ \ / \
/ \ / \
38 67 54 93
/ \ |
/ \ |
17 25 42
</code></pre>
<p>根据两次deletemax操作后的me堆,结果堆为[93,67,93,38,42,54,25,17]</p>
<pre><code> 93
/ \
/ \
67 93
/ \ / \
/ \ / \
38 42 54 25
/
/
17
</code></pre>
<p><strong>我想确认,我是否正确地插入和删除堆,上面的回答是否正确?</strong>
如果不正确,请引导我。</p>