设关键字集合为10,2,14,8,12,13,用堆排序方法对其从小到大排序,写出堆排序的初态、建堆

1个回答
展开全部
摘要 设关键字集合为10,2,14,8,12,13,用堆排序方法对其从小到大排序,写出堆排序的初态、建堆和排序过程中重建堆的过程:
**初态:** 无序
**建堆:** 将关键字依次插入堆中,从最后一个非叶子节点开始调整堆。
**排序过程中重建堆的过程:** 在每次取出堆顶元素后,从最后一个非叶子节点开始调整堆。
---
**递减排序(小根堆):**
* **初态:** -1, 4, 7, 8, 20, 15, 7, 9
* **建堆:** 先建立小根堆,得到 -1, 4, 7, 8, 20, 15, 7, 9
* **排序过程中重建堆的过程:** 在每次取出堆顶元素(最小值)后,从最后一个非叶子节点开始调整堆。例如,取出-1后,得到4, 7, 8, 20, 15, 7, 9,然后调整堆,得到4, 7, 8, 20, 15, 9, 7。重复此过程,直到所有元素都已排序。
---
**递增排序(大根堆):**
* **初态:** 20, 15, 7, 8, 9, -1, 7, 4
* **建堆:** 先建立大根堆,得到20, 15, 8, 9, 7, -1, 4
* **排序过程中重建堆的过程:** 在每次取出堆顶元素(最大值)后,从最后一个非叶子节点开始调整堆。例如,取出20后,得到15, 8, 9, 7, -1, 4,然后调整堆,得到15, 9, 8, 7, -1, 4。重复此过程,直到所有元素都已排序。
咨询记录 · 回答于2024-01-16
设关键字集合为10,2,14,8,12,13,用堆排序方法对其从小到大排序,写出堆排序的初态、建堆和排序过程中重建堆的过程
设关键字集合为10, 2, 14, 8, 12, 13,用堆排序方法对其从小到大排序,写出堆排序的初态、建堆和排序过程中重建堆的过程: 初态: 20, 15, 7, 8, 9, -1, 7, 4 建堆: -1, 4, 7, 8, 20, 15, 7, 9 排序过程中重建堆的过程: 抱歉,根据您提供的关键字集合,经过堆排序后,结果是一个已经排好序的有序序列,因此不存在重建堆的过程。
从小到大应该是递增排序吧
是的
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消