腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
提取
最小
元素
后
的
最小堆
问题
c
、
data-structures
、
heap
、
min-heap
我正在做一个
最小堆
的
实现,并且对这个概念还是个新手。building-heap-from-array/ https://algorithmtutor.com/Data-Structures/Tree/Binary-Heaps/ 我修改了代码,并提出: (这是我遇到
问题
的
代码,所有其他代码都与我
的
问题
无关,至少我是这样认为
的
) #define LCHILD(x) (2 * (x)) + 1 #defin
浏览 22
提问于2021-02-25
得票数 4
回答已采纳
2
回答
堆插入,删除k个
元素
algorithm
、
heap
我有以下
问题
(我认为这是众所周知
的
/标准
的
),我正在思考:我在考虑在中遍历大
的
最小堆
,维护一个
最小堆
而不是简单
的
队列。最初,辅助min-heap包含我
的
大min-heap
的
根。在每一步,我
提取
最小
值并添加它
的
所有子
元素
(最大值2)。在辅助min-
浏览 0
提问于2010-11-01
得票数 1
回答已采纳
1
回答
对Min-堆“
提取
最小
元素
”方法
的
澄清
algorithm
、
heap
、
min-heap
我正在读“破解编码采访:第6版”一书,我对他们对“Minimum”
的
定义以及他们如何说“
提取
最小
元素
”感到困惑。他们说实现
提取
最小
元素
的
方式如下: 首先删除
最小
元素
,并将其与堆中
的
最后一个
元素
(最底层、最右边
的
元素
)交换。然后,我们向下抛出这个
元素
,用它
的
一个子
元素
交换它,直到min堆属性被恢
浏览 1
提问于2022-10-04
得票数 0
回答已采纳
1
回答
可以使用堆在O(1)空间中完成k-杂乱数组排序吗?
arrays
、
algorithm
、
sorting
、
heap
在我们所熟悉
的
问题
中,数组中
的
每个
元素
最多都位于距其正确位置
的
k个位置,无论是向左还是向右,
最小堆
实现如下所示。 创建一个大小为k+1
的
最小堆
。因此,
最小堆
的
根是排序数组中
最小
的
元素
。对于其余
的
n-(k+1)
元素
,在每次迭代中,在ai和已经在堆中
的
元素
之间进行选择。因此,将ai插入堆中,进行
浏览 1
提问于2016-11-06
得票数 2
1
回答
Prim算法:如何获得要对哪个DECREASE_KEY操作执行
的
密钥索引?
algorithm
、
graph
、
time-complexity
、
prims-algorithm
所以我遵循Prim
的
MST算法
浏览 1
提问于2017-12-28
得票数 2
回答已采纳
1
回答
在findMin方法
的
帮助下创建选择排序方法
java
、
arrays
、
algorithm
、
sorting
我
的
任务是创建一个由findMin方法辅助
的
选择排序方法(按升序对
元素
进行排序)。 我这里
的
问题
是,我不确定在选择排序方法中应该在哪里调用findMin方法。此外,我怀疑我
的
findMin方法是否正确地基于注释中
的
要求。
浏览 0
提问于2017-02-23
得票数 0
3
回答
为什么std::priority_queue使用最大堆而不是
最小堆
?
c++
、
stl
、
priority-queue
我一直想知道为什么默认情况下STL优先级队列使用最大堆而不是
最小堆
。脑海中浮现
的
两个明显
的
用例是寻路(Dijkstra)和构建Huffman代码。这两种算法都需要首先
提取
最小
元素
。由于排序(std::sort)默认使用升序,我想知道priority_queue背后
的
设计理由是什么,因为我更喜欢默认
的
最小堆
。
浏览 1
提问于2014-08-31
得票数 10
1
回答
具有相同
元素
的
Max和Min堆
c++
、
heap
、
binary-heap
、
min-heap
、
max-heap
我正在向
最小堆
中添加随机数,同时在最大堆中以相同
的
顺序添加相同
的
数字。因此,在最后,这两个堆将有相同
的
数字,有差异,一个是
最小堆
,第二个是最大堆。现在
问题
是: 如果我决定从最大堆中删除最大
元素
,那么最大
元素
是否总是位于
最小堆
的
底部?如果不是,那么另一个
问题
是,如果我想从min堆中删除这个max
元素
,将其与min堆
的
最后一个
元素
交换,删除最后一个<
浏览 3
提问于2016-11-07
得票数 2
回答已采纳
1
回答
从
最小堆
中删除
的
平均时间复杂度
algorithm
、
data-structures
、
time-complexity
按顺序删除堆上所有
元素
的
平均时间复杂度(即
最小堆
上
的
removeMin )?
浏览 1
提问于2016-05-14
得票数 0
回答已采纳
1
回答
为Prim在c++中
的
实现设计数据结构
c++
、
algorithm
、
minimum-spanning-tree
、
prims-algorithm
我正在尝试在C++中实现Prim
的
MST算法。我有一个设计
问题
1]定义结构 int vertex; int neighbor;使用
最小堆
返回权重
最小
的
节点。但
问题
是减
浏览 2
提问于2015-05-16
得票数 0
1
回答
如何在移除min
后
对基于数组
的
min堆进行“十六化”?
java
、
arrays
、
heap
、
min-heap
一旦调用了removes函数,我将如何“使”java中基于数组
的
最小堆
(这只是在索引1处获取
元素
并删除它,然后用数组中
的
最后一项替换它)。对于如何在删除min发生
后
将数组再次放入
最小堆
的
问题
,我感到困惑。任何帮助都将不胜感激,谢谢各位!
浏览 4
提问于2014-10-31
得票数 1
回答已采纳
4
回答
是否有可能实现既是最大堆又是
最小堆
的
二进制堆?
c++
、
algorithm
、
data-structures
、
priority-queue
、
binary-heap
我正在尝试实现一个二进制堆(优先级队列),它具有
最小堆
和最大堆
的
能力。它需要有一个insert(value)、extractMin()和一个extractMax()方法。
提取
方法从堆中移除值并返回值。 我最初使用了两个数组,名为minHeap和maxHeap,一个用于将数据存储在
最小堆
结构中,另一个用于在最大堆结构中存储相同
的
数据。更不用说,删除值
后
恢复堆
的
percolatingDown()和percolatingUp()方法已经是O(log );因此,
提取</
浏览 0
提问于2015-07-23
得票数 3
回答已采纳
1
回答
Cs数据结构家庭作业
问题
-
最小堆
arrays
、
sorting
、
data-structures
、
heap
问题
:排序数组(包含n个
元素
)和
最小堆
之间
的
比较数是n-1。 我知道
的
是:我知道排序
的
数组是
最小堆
,但是比较呢?
浏览 2
提问于2021-05-29
得票数 0
2
回答
跟踪中位数
的
最佳方法是什么?
algorithms
、
performance
、
math
我读了一个
问题
,我正在寻找关于如何解决这个
问题
的
意见:有两种数据结构可以解决这一
问题
。一个是平衡二叉树,另一个是保持最大一半和
最小
一半
元素
轨迹
的
两个堆。我认为这两种解决方案
的
运行时间与O(n lg n)相同,但我不能肯定我
的
判断。在这个
问题
中,我认为堆是跟
浏览 0
提问于2011-06-28
得票数 8
1
回答
这里如何使用
最小堆
来解决这个
问题
?
c++
、
algorithm
、
min-heap
我想知道在这里如何使用
最小堆
来解决以下
问题
。给定一个非空
的
整数数组,返回k个
最
频繁
的
元素
.注意:您可以假设k总是有效
的
,1≤k≤数
的
唯一
元素
。您
的
算法
的
时间复杂度必须优于O(n log ),其中n是数组
的
大小。
浏览 6
提问于2016-05-02
得票数 1
回答已采纳
1
回答
从现有数组构造数组
algorithm
、
heap
给定一个整数数组( A[1...n-1] ),其中N是数组A
的
长度。构造一个数组B,这样B[i] = min(A[i], A[i+1], ..., A[i+K-1])就可以给出K。阵列B将有N+1
元素
. 我们能做得更好吗?
浏览 1
提问于2012-06-22
得票数 2
回答已采纳
1
回答
努力解决这个练习面试
的
问题
。感谢任何人
的
帮助
algorithm
、
data-structures
、
tree
、
huffman-code
霍夫曼编码是一种根据字符
的
频率对字符进行编码
的
方法。为每个字母分配一个可变长度
的
二进制字符串,例如0101或111110,其中较短
的
长度对应于较常见
的
字母。为此,构建一个二叉树,使得从根到任何叶
的
路径唯一地映射到一个字符。当遍历路径时,向下到左子节点对应于前缀中
的
0,而向下向右对应于1。给定一个字符频率字典,构建一个Huffman树,并使用它来确定字符及其编码
的
二进制字符串之间
的
映射。
浏览 0
提问于2020-05-05
得票数 0
2
回答
是否有O(n)算法来构建min-heap?
arrays
、
algorithm
如果输入数组按升序排序,例如从1到n
的
数字,那么从这样
的
数组构建
最小堆
需要O(n)吗?编辑1:我知道如果我们从n个
元素
构建一个
最小堆
,那么在最坏
的
情况下,它
的
运行时间将是Ω(n*log ),但是这n个
元素
的
升序排序是否可以在O(n)最坏情况下运行时间构建
最小堆
?编辑2:有没有可能我们可以从一个n大小
的
数组中以O(n)
的
降序构建一个
最小
的
堆?如果是
浏览 3
提问于2018-05-24
得票数 0
1
回答
在
最小堆
中查找k个
最小
元素
algorithm
假设我有一个大小为n
的
最小堆
,我想在不改变原始
最小堆
的
情况下找到
最小
的
k个
元素
。运行时应该是theta(k^2)。我可以使用内存θ(K)。 我该怎么做呢?
浏览 2
提问于2012-11-16
得票数 4
回答已采纳
2
回答
采用双结构方法
的
双端优先级队列
java
、
priority-queue
我试图了解如何使用两个堆构建双结束优先级队列:
最小堆
和最大堆。到目前为止,我
的
想法是,我需要一个数组来存储
最小堆
,另一个数组存储最大堆,然后我需要知道如何将两个数组中
的
相关条目连接到另一个数组中。例如,我需要确保值"12“在min堆中
的
任何位置指向值"12”在最大堆中
的
位置,反之亦然。我在理论上理解这一点,但我不知道如何实际实现它。如何使一个数组中
的
元素
以高效和灵活
的
方式指向另一个数组中
的
浏览 4
提问于2013-07-26
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
如何在一亿个数当中找到最大的10000个数?
基础排序算法四——堆排序
最小堆定时器
线程篇之 Queue专题
C+树进阶系列之笛卡尔树的两面性
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券