heap 相关问题

堆(数据结构)是相对于深度排序的树。堆也可以指为动态分配留出的进程内存。

如何使用Queue.PriorityQueue作为maxheap python

如何使用Queue.PriorityQueue作为maxheap python? Queue.PriorityQueue 的默认实现是 minheap,在文档中也没有提到这是否可以用于 ma...

回答 5 投票 0

java中整数数组的优先级队列

我想比较以下数组的第二个元素: int[][] 间隔 = new int[][]{new int[]{0, 30},new int[]{5, 10},new int[]{15, 20}}; 我的优先级队列与自定义比较器: 优先...

回答 6 投票 0

高效的列表排序:使用堆代替标准排序速度较慢

我正在尝试创建一种更有效的方法来对 python 中的列表和字典进行排序,并遇到了有效的数据结构,可以在多个键上对对象进行排序。建议的解决方案是...

回答 1 投票 0

高性能列表排序:使用堆代替标准排序速度较慢

我正在尝试创建一种更有效的方法来对 python 中的列表和字典进行排序,并发现这篇文章规定的解决方案是使用堆。 然而,每当我测试它时,堆...

回答 1 投票 0

Python heapify() 时间复杂度

def heapify(A): 对于 xrange(len(A)//2-1, -1, -1) 中的根: 根值 = A[根] 子级 = 2*根+1 当孩子 < len(A): if child+1 < len(A) and A[child] > A[

回答 2 投票 0

跟踪扩展数组的中位数

面试问题: 编辑如下 给你一个数组。您可以从中创建 2 个堆,一个是最小堆,另一个是最大堆。现在使用这 2 个提供的堆在 O(nlog n) 中找到数组的中位数 ...

回答 5 投票 0

PHP 堆的结果顺序不正确

我遇到了一个问题,没有一个 PHP 堆类以正确的顺序存储数据。 给出的例子很简单,但是这个小数据集的错误使得我正在开发的项目......

回答 1 投票 0

基于 2 个标准查找最短路径的算法

我们从节点 0 开始,需要使用尽可能少的步骤到达节点 n-1。同时每一步都会影响我们的温度,有些步数增加 1 度,有些步数减 1 度。 输入是我...

回答 1 投票 0

为什么Dijkstra算法中的decreasekey需要O(logN)时间?

对于更新部分, 对于 u 的所有邻居 w: 如果 dist[w] > dist[u] + l(u,w) 距离[w] = 距离[u] + l(u,w) 上一个[w] = u 减少键(H,w) 这里,w是节点的ID...

回答 3 投票 0

如何与盒装枚举进行模式匹配?

我有一个枚举,我必须在其中执行模式匹配。但由于我在堆栈内存有限的虚拟机上运行程序(< 4Kb ), i allocated the enum on the heap using Box. But while

回答 1 投票 0

最大堆中的第 k 个最大元素可能位于哪些级别?

考虑一个包含 n 个元素的最大堆。我有兴趣确定堆中第 k 个最大元素可能所在的级别,其中 2 <= k <= floor(n/2). It's assumed t...

回答 1 投票 0

高效实现优先级队列,恒定时间提取最小元素

我正在做一个项目,需要一个具有以下特征的优先级队列: 恒定时间提取:我需要高效地从

回答 1 投票 0

在测距时删除优先级队列中元素的安全方法

我从go文档中获取了优先级队列的完整实现。 如果元素满足某些条件,我想删除它们。所以我应该: 然后迭代队列 检查情况 如果条件...

回答 3 投票 0

为什么堆排序中要使用sink来构建堆而不是swim?

《算法第四版》2.4。里面提到,在堆构建中,从右向左进行,使用sink()来创建子堆效率更高。但为什么??? 我想知道为什么。为什么???...

回答 1 投票 0

运行代码时出现以下错误:“调试断言失败!_CrtIsValidHeapPointer(block)”

我对反复出现的“调试断言失败!_CrtIsValidHeapPointer(block)”错误感到困惑,每次执行复制构造函数和运算符=时,该错误都会持续存在。尽管尝试...

回答 1 投票 0

GCC:如何验证堆是否为空?

我编写了一些使用 malloc() 和 free() 的代码。我已经在 GCC/MinGW 上实现了一个模块测试程序来测试这段代码。在某些时候,我想验证所有堆都有

回答 1 投票 0

Python 中的滑动窗口中值两堆方法,TLE 错误

我在使用两个堆方法解决滑动窗口中值问题时遇到了麻烦,因为我在测试用例中不断遇到时间限制超出错误,其中 K = 50000 并且输入一个 100000 的数组...

回答 1 投票 0

有没有一种简单的方法可以在C++中创建最小堆?

我对 C++ 非常陌生,我想知道是否有一种方法可以从标准库中在 C++ 中创建最小堆。

回答 3 投票 0

部分释放 C++ 中的结构/类

有没有办法在 C++ 中部分释放结构/类?我试图在 C++ 中构建某种指向 RefCount 的新指针 模板 结构体引用计数{ 取消签名...

回答 1 投票 0

如何在C中按升序正确地确定优先级队列堆的优先级?

我的学校程序几乎按预期工作,我的优先级队列能够正确插入和删除值,并且内容按预期存储。然而我的输出看起来很奇怪,因为 val...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.