腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
Heapify vs Heap-Sort vs Construct Heap
、
、
、
、
我正在学习
堆
数据结构,并且对标题中提到的
堆
函数感到非常困惑。另外,我想知道在这些函数中,我们处理的是实际的二叉树还是数组?
浏览 22
提问于2021-11-18
得票数 0
1
回答
为什么通过插入元素构建
堆
的运行时比使用heapify更糟糕?
、
、
、
在CLRS书中,通过自
顶
向下的heapify构建
堆
具有O(n)的复杂性。
堆
也可以通过反复调用插入来构建,在最坏的情况下,插入的复杂性为nlg(n)。快速排序、合并排序和
堆排序
都是基于减少不必要的比较,但方法不同。快速排序:平衡分区,不需要比较左子集和右子集。合并排序:简单地比较两个子数组中的两个最小元素。
堆排序
:如果A的值大于B,则A的值比B的后代大,不需要与他们进行比较。
浏览 5
提问于2014-01-29
得票数 4
回答已采纳
9
回答
纯函数
语言
中的有效
堆
、
、
、
、
作为Haskell的一个练习,我正在尝试实现
堆排序
。
堆
通常是在命令式
语言
中作为数组实现的,但是在纯函数
语言
中这将是非常低效率的。因此,我已经看过二进制
堆
,但是到目前为止,我发现的所有东西都是从命令式的角度描述它们的,而给出的算法很难转化为功能设置。如何用纯函数
语言
(如Haskell )有效地实现
堆
?编辑:我的意思是它仍然应该在O(n*log )中,但是它不需要超过
C
程序。另外,我想使用纯函数式编程。在Haskell做这件事还有什么意义?
浏览 0
提问于2009-05-31
得票数 38
回答已采纳
2
回答
堆排序
-过滤-向下/移位-向下操作和
堆
操作的区别/关系是什么?
、
过滤-向下/移位-向下操作和
堆
操作有什么区别? 这是我用
C
语言
实现的Shift-down函数,我已经用下面的代码实现了
堆排序
。此外,使用Heapify实现
堆排序
的算法是什么?
浏览 0
提问于2012-02-28
得票数 3
回答已采纳
2
回答
堆排序
时间复杂度深入理解
、
、
、
、
当我在大学学习数据结构课程时,我学到了以下公理: 从
堆<
浏览 4
提问于2015-08-20
得票数 3
回答已采纳
3
回答
为什么我的
堆排序
比Javas和
C
++s排序函数快?
、
、
我最近学会了如何使用
堆
和
堆排序
的优点。我决定将
堆排序
与
C
++中的std::sort和Java
语言
中的Arrays.sort()进行比较。我用Java
语言
将100,000,000个整数生成到一个数组中,并运行Arrays.sort(),然后生成新的随机序列并运行我的heapSort()。所以
堆排序
的速度大约快8倍。 然后,我在
C
++中运行了类似的代码,这次使用std::vector作为我的容器(因为std::sort需要两个迭代器)。使用-Wall -p
浏览 0
提问于2013-11-15
得票数 0
6
回答
为什么
堆
不稳定?
、
、
我想弄明白为什么
堆
不稳定。我搜索过这个,但没有找到一个好的,直观的解释。谢谢你的帮忙!
浏览 16
提问于2013-10-12
得票数 39
回答已采纳
5
回答
为什么不总是使用
堆排序
?
、
、
堆排序
排序算法的最坏情况复杂度似乎为O(nlogn),排序操作使用O(1)空间。此外,我还看到人们将“不稳定性”这一术语与
堆排序
一起使用。这意味着什么?
浏览 49
提问于2011-11-29
得票数 71
回答已采纳
3
回答
使用链表的
堆排序
、
、
、
我想知道是否有人使用链表进行
堆排序
,如果他们能提供代码。我已经能够使用数组进行
堆排序
,但尝试在链表中进行
堆排序
似乎不切实际,而且在你知道的地方也是一件痛苦的事情。我也在使用
C
语言
。
浏览 1
提问于2012-06-05
得票数 6
回答已采纳
2
回答
在
C
中创建一个具有任意节点类型的
堆
。如何释放它?
、
、
、
通过创建一个可以接受字符串或数值节点类型的
堆
数据结构,我用
C
语言
编写了一个
堆排序
。(我正在创建我自己的私有
堆
,我可以排序)当插入一个节点时,会为void*分配内存。当
堆
被释放时,我计划遍历并释放每个void*。在这一点上,free会知道每个节点要释放多少字节?
浏览 0
提问于2012-11-18
得票数 0
回答已采纳
2
回答
堆排序
与合并排序的速度
、
、
、
在迭代大型数组时,哪种算法更快:
堆排序
还是合并排序?为什么这些算法中的一种比另一种快?
浏览 2
提问于2018-11-13
得票数 3
回答已采纳
1
回答
从
堆
支持的Min优先级队列获取最大值的时间复杂性
、
、
我在网上遇到了一个问题,询问从
堆
支持的Min优先级队列中获取最大值的平均时间复杂度。 我推断答案是O(n),因为
堆
是由数组支持的,迭代数组一次以找到最大值需要进行n比较。
浏览 6
提问于2017-12-11
得票数 0
回答已采纳
1
回答
用Python对2D数组进行部分a排序
、
、
、
我找到了这个答案,,但我看不出如何使‘
堆
化’适应于argsort任务(我不知道如何用Python进行
语言
互操作,所以我不知道如何手动完成
堆排序
).
浏览 0
提问于2016-03-28
得票数 1
1
回答
1元
堆排序
?
、
、
、
不久前,我们被指派编写一个
c
程序,该程序使用d-ary max-heap (每个节点最多有d个子节点的
堆
)对n个数字的数组进行排序。程序需要要求用户输入d的值,一个介于2和数组大小之间的值。当我检查我的程序时,我意外地输入了1作为d的值,不知何故,算法成功地使用1元
堆
对数组进行了正确的排序,尽管它比正常的d值花费了更多的时间。 那件事怎么可能?一元
堆
甚至不是
堆
,它就像一个列表,每个节点只有一个子节点。有人能解释一下这种排序是怎么发生的吗?
浏览 0
提问于2010-12-12
得票数 6
回答已采纳
2
回答
堆
的正确定义是什么?
、
我读到了Java编程中的
堆
。在我的教科书中,我发现了
堆
的定义:
堆
是一个完整的二叉树,具有以下属性: 1)根中的值是树中最小的项;2)每个子树都是
堆
但是当我看关于
堆
的视频时,我发现
堆
的定义完全不同:在
堆
中,父键是更大的,然后是子键
浏览 6
提问于2015-12-15
得票数 0
回答已采纳
1
回答
堆排序
的目的是什么?
、
、
、
、
当我们构建
堆
时,数组中的元素会按照特定的顺序(升序或降序)排列,这取决于它是最大堆还是最小堆。那么,当构建
堆
本身以较低的时间复杂度按排序顺序排列元素时,
堆排序
的用途是什么?
浏览 8
提问于2021-09-05
得票数 2
回答已采纳
3
回答
在学术环境之外,选择或插入排序有用吗?
、
、
、
这些排序算法在实际应用中有什么用处吗?有人能举个例子说明一下它的用法吗?
浏览 6
提问于2016-02-05
得票数 2
回答已采纳
5
回答
算法刷新器为什么
堆排序
算法是一个不排序算法?
、
、
、
我不明白为什么
堆排序
被认为是一个内部排序算法。所以我可能误解了这里的定义吗?
浏览 0
提问于2011-10-29
得票数 15
回答已采纳
1
回答
固定位置:在iOS 4中固定
、
、
我正在建立一个使用PhoneGap超文本标记
语言
/CSS的
小
应用程序。现在我的问题是,position:fixed (在
顶
栏上使用)可以在iOS 5上运行,但不能在iOS 4上运行。
浏览 0
提问于2012-01-02
得票数 0
回答已采纳
2
回答
如何构建/编译
C
++、Java和Python项目?
、
、
、
、
假设我有一
堆
使用不同编程
语言
(
C
++、Java、Python等)的
小
目标,它们具有编程
语言
间的依赖关系(Java项目依赖于
C
++,Python依赖于
C
++)。如何构建/编译它们?Gyp有一个非常丑陋的
语言
定义,而且为了构建我的java目标,我不得不破解ant脚本。
浏览 0
提问于2010-11-09
得票数 2
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C语言小应用
C语言小乐趣
走进C语言:堆、栈与堆区、栈区,你知道有什么区别吗?
堆排序、希尔排序
C语言之算法与数据结构系列之探秘堆结构!
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券