问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

...写出初始建堆过程图示,再根据初始堆写出堆排序过程图示。_百度知 ...

发布网友 发布时间:2022-04-24 17:02

我来回答

7个回答

热心网友 时间:2022-05-22 02:44

起始序列为14,15,30,28,5,10,

(1)因此起始堆的情况如下:
14
15 30
28 5 10

(2)假设是打算得到一个从小到大的c,所以需要建大顶堆,起始状态从下向上建堆:
第一步: 第二步:
14 30
28 30 28 14
25 5 10 25 5 10

(3)此时已经建立完了初始的堆。此时堆顶元素30即为最大元素,将堆顶元素与堆最后
一个元素进行交换,此时30是最大元素位于队尾,因此无需继续排序。所以堆如下图
所示:10 28 14 25 5

(4)此时由于除被交换到堆顶的10以外其他的都基本有序,所以自上而下建堆得到的堆
如下:
28
25 14
10 5

(5)重复(3)和(4)步骤确定了28的位置并得到堆如下:
25
10 14
5

(6)重复(3)和(4)步骤确定了25的位置并得到堆如下:
14
10 5

(7)重复(3)和(4)步骤确定了14的位置并得到堆如下:
10
5

(8)重复(3)和(4)步骤确定了10的位置,此时只有一个数5也位于了堆的第一个位置,
因此排序完成。

扩展资料:

建堆效率

n个结点的堆,高度d =log2n。根为第0层,则第i层结点个数为2^i,考虑一个元素在堆中向下移动的距离。大约一半的结点深度为d-1,不移动(叶)。四分之一的结点深度为d-2,而它们至多能向下移动一层。树中每向上一层,结点的数目为前一层的一半,而子树高度加一。

这种算法时间代价为Ο(n)

由于堆有log n层深,插入结点、删除普通元素和删除最小元素的平均时间代价和时间复杂度都是

Ο(log n)。

操作实现

在程序中,堆用于动态分配和释放程序所使用的对象。在以下情况中调用堆操作:

1.事先不知道程序所需对象的数量和大小。

2.对象太大,不适合使用堆栈分配器。

堆使用运行期间分配给代码和堆栈以外的部分内存。

传统上,操作系统和运行时库随附了堆实现。当进程开始时,操作系统创建称为进程堆的默认堆。如果没有使用其他堆,则使用进程堆分配块。

语言运行时库也可在一个进程内创建单独的堆。(例如,C 运行时库创建自己的堆。)除这些专用堆外,应用程序或许多加载的动态链接库 (DLL) 之一也可以创建并使用单独的堆。Win32 提供了一组丰富的 API用于创建和使用专用堆。有关堆函数的优秀教程,请参阅 MSDN 平台 SDK 节点。

参考资料来源:百度百科-堆

热心网友 时间:2022-05-22 04:02

起始序列为14,15,30,28,5,10,
(1)因此起始堆的情况如下:
14

15 30

28 5 10

(2)假设是打算得到一个从小到大的序列,所以需要建大顶堆,起始状态从下向上建堆:
第一步: 第二步:
14 30

28 30 28 14

25 5 10 25 5 10

(3)此时已经建立完了初始的堆。此时堆顶元素30即为最大元素,将堆顶元素与堆最后
一个元素进行交换,此时30是最大元素位于队尾,因此无需继续排序。所以堆如下图
所示:
10

28 14

25 5
(4)此时由于除被交换到堆顶的10以外其他的都基本有序,所以自上而下建堆得到的堆
如下:
28

25 14

10 5

(5)重复(3)和(4)步骤确定了28的位置并得到堆如下:
25

10 14

5

(6)重复(3)和(4)步骤确定了25的位置并得到堆如下:
14

10 5

(7)重复(3)和(4)步骤确定了14的位置并得到堆如下:
10

5

(8)重复(3)和(4)步骤确定了10的位置,此时只有一个数5也位于了堆的第一个位置,
因此排序完成

热心网友 时间:2022-05-22 05:36

这一组数字是45,30,28,五,何时关键字序列写出初始建堆过程的图示。

热心网友 时间:2022-05-22 07:28

“建堆”就是将数据元素依次按完全二叉树的结构填入,再调整...
则完全二叉树的节点编号1-6的元素初始内容依次为14 15 30 28 5 10
排序的过程:(以下为小根堆过程)
建堆步骤1 14 15 30 28 5 10
建堆步骤2 14 15 10 28 5 30
建堆步骤3 14 5 10 28 15 30
5 14 10 28 15 30(维护堆的性质)

建堆(小根堆)完成

热心网友 时间:2022-05-22 09:36

所谓“建堆”就是将数据元素依次按完全二叉树的结构填入,再调整...
则完全二叉树的节点编号1-6的元素初始内容依次为14 15 30 28 5 10
排序的过程:(以下为小根堆过程)
建堆步骤1 14 15 30 28 5 10
建堆步骤2 14 15 10 28 5 30
建堆步骤3 14 5 10 28 15 30
5 14 10 28 15 30(维护堆的性质)

建堆(小根堆)完成

热心网友 时间:2022-05-22 12:00

你怎么把题目中的15 换成25了

热心网友 时间:2022-05-22 14:42

请问这道题你是在哪看到的,我15年考天大计算机研究生,这是13年原题,希望有资料可以共享
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
圣斗士星矢正义传说攻略_圣斗士星矢正义传说新手攻略 圣斗士星矢正义传说怎么觉醒圣衣 圣衣玩法攻略 圣斗士星矢正义传说召唤石怎么获得 获取攻略一览 超市促销员手机上打卡迟到几分钟 在超市里打卡显示的公司是什么意思? 长鹿休闲度假农庄交通指南 求从容桂到长鹿农庄怎么坐车,详细,准确 形容神情的五字词语 女生内衣穿多久该扔掉 吴江离张家港有多远? 请问工商银行的白金卡怎么办理啊?什么是白金卡啊~ 工行牡丹白金卡的办卡条件和途径? 工行信用卡申请:工行白金卡申请需要什么条件 工商银行借记卡金卡,白金卡.办理要什么条件 赛尔号,为什么游戏里迪恩是女的?动画片和电影里是男?还有为什么游戏里迪恩是好人,电影和动画里是坏人 赛尔号:迪恩的真实身份是什么啊? 赛尔号欧比组织迪恩究竟是什么人 赛尔号 这是什么精灵啊???图鉴里没有的一个 赛尔号6迪恩和他的精灵怎么样?叛变了吗? 赛尔号 迪恩的精灵 赛尔号上的迪恩是谁 迪恩·卡朋的追随精灵 小额贷款需要条件? 小额贷款有什么申请条件 冷水机冷冻机? 制冷量为22kw的制冷机相当于多少匹? 20匹的制冷机组控制箱和30匹有区别吗? 制冷机型号 20匹制冷机组用多少冷吨的膨胀阀? 风冷制冷机? 数据结构的堆排序和初始堆的概念...我被搞懵了...他们有什么不同... C++堆排序建堆问题 ...56,38,40,84),如果采用堆排序方法,则建立的初始堆是? 第三大题的应用题第一题 ①堆排序方法从小到大排序是什么意思?是要用小... 在手机上怎么查看QQ号码 手机qq号码忘了怎么办 用手机 作为qq号码可以吗? 如何用手机申请手机QQ号码 清风1758跑步机怎么链接手机? lncllne跑步机怎么连接手机音乐 立久佳A6跑步机怎样连接手机蓝牙? 贝德拉跑步机怎么和手机连蓝牙 小金k12跑步机TRK12F怎样用手机控制? 莫比跑步机能连几个手机 益步跑步机联网怎么切换数字 电视剧《夫妻那些事儿》洪小梅的扮演者是谁? 大连股票群 《L.L.DKELINB 》是不是老人头的标志? 米其林轮胎带有SNI什么意思? 我家的夏普电视怎么投屏不了?