priority-queue相关内容

GO中的优先级队列

谁能给我解释一下: 我想在GO中实现一个优先级队列(接口实现取自link,但优先级最低) 我的代码: pq := make(PriorityQueue, 0) pq.Push(&Item{value: 0, priority: 0}) heap.Init(&pq) fmt.Println(heap.Pop(&pq).(*Item)) item := &Item{value: 1 ..
发布时间:2022-09-02 12:53:15 其他开发

带自定义比较器的Java PriorityQueue

我使用的是PriorityQueue和我自己的比较器,但不知何故,最终结果并不总是好的。 我应该按照平均成绩,而不是名字,而不是ID来排序。不。最后,它应该返回已排序的队列中剩余的名称。剩下的名字是好的,但他们的顺序不是。 输入(名称,等级平均值,id.no): add John 3,75 50 add Mark 3,8 24 add Shafaet 3,7 35 poll poll add ..
发布时间:2022-09-02 12:49:21 Java开发

为什么C++中的优先级队列(最大堆)使用更少的<;T>;而不是更大的<;T>;?

我搞不懂为什么C++中的priority_queue使用less作为默认比较器,并实现最大堆?元素不是按升序排列的吗? 推荐答案 表示一致性。less被用作许多算法和容器的默认比较器,我们普通人类不必尝试和记住哪个默认使用哪个比较器,因为它们都是相同的。 ..
发布时间:2022-09-02 12:38:20 C/C++开发

Java:PriorityQueue初始化

我正在尝试理解启动优先级队列的以下行: PriorityQueue pq = new PriorityQueue((a, b) -> b[1] - a[1]); 与文档中的构造函数部分相比, https://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html 我不知道它使用的是哪个构造函数。 ..
发布时间:2022-09-02 12:27:04 Java开发

STL 堆栈和 priority_queue 的插入器

std::vector、std::list 和 std::deque 有 std::back_inserter,并且 std::set 有 std::inserter. 对于 std::stack 和 std::priority_queue 我会假设等效的插入器是 push() 但我可以似乎找不到要调用的正确函数. 我的意图是能够将以下函数与正确的插入迭代器一起使用: #includ ..
发布时间:2022-01-24 20:30:06 C/C++开发

我可以从 PriorityQueue 中获取项目而不删除它吗?

我想获取队列中的下一个项目,但我不想将其出列.Python的queue.PriorityQueue有可能吗?从 docs,我看不到怎么办呢 解决方案 根据理论,当您从队列中获取项目时,它将从队列中删除.您必须编写自己的函数,该函数将为您提供 PriorityQueue 的最后一个元素.你可以通过继承priorityqueue来创建peek函数. ..
发布时间:2022-01-21 12:26:16 Python

制定查询优先级队列表的 SQL

我正在实现一个小队列来处理哪个进程首先运行.我正在使用数据库中的表来执行此操作.这是表的结构(我在 SQLite 中模拟它): "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL ,“标识符" VARCHAR NOT NULL ,“priority_number"整数默认值 15,“时间戳"DATETIME DEFAULT CURRENT_TIMES ..
发布时间:2022-01-21 12:23:29 其他开发

Python 中内置的最大堆 API

默认 heapq 是最小队列实现,想知道是否有最大队列选项?谢谢. 我尝试了使用 _heapify_max 作为最大堆的解决方案,但是如何动态处理 push/pop 元素?看来 _heapify_max 只能在初始化期间使用. 导入 heapqdef 堆排序(可迭代):h = []对于可迭代的值:heapq.heappush(h, 值)返回 [heapq.heappop(h) for i ..
发布时间:2022-01-21 12:13:58 Python

尝试使用该类的结构中的变量创建自定义类的优先级队列

所以这是我的类,目标是使 bnode 的优先级队列按顺序排列,以便具有最低计数符号的 bnode 具有最高优先级.这是我的代码: 结构符号{显式符号(char av = 0, int ac = 0) : value(av), count(ac) { }字符值;//实际交易品种,默认为 0(空)整数计数;//交易品种计数,默认为 0};//象征//比较两个符号//计数较低的符号是计数较高的“小于" ..
发布时间:2022-01-21 12:07:48 C/C++开发

如何在优先队列中找到价值?

我想在我的优先队列中找到一个节点,但我没有找到解决方案 :(如果你有解决方案,我很感兴趣. 谢谢帮助. 解决方案 如果你真的需要搜索一个 std::priority_queue 并且想要高效地完成它,你可以派生一个新类并添加find 成员函数.由于您没有添加任何其他状态,因此您不必担心切片或其他问题,因为 std::priority_queue 不是多态的. #include ..
发布时间:2022-01-21 11:55:07 C/C++开发

更改优先级队列元素是否会导致重新使用队列?

我有一个priority_queue,我想修改它的一些内容(优先级值),那么队列会被重新使用吗? 这取决于它是使用 push/pop(更有可能,因为您只需要“插入",而不是使用整体),还是在访问 top 或 pop 时. 我真的很想更改队列中的一些元素.类似的东西: priority_queueq;诠释 a=2,b=3,c=5;int *ca=&a, *cb=&b, cc=&c;q. ..
发布时间:2022-01-21 11:54:50 C/C++开发

如何在 Python 中实现优先级队列?

很抱歉提出这么愚蠢的问题,但 Python 文档令人困惑...... 链接 1:队列实现http://docs.python.org/library/queue.html 它说 Queue 有一个优先级队列的类.但我找不到如何实现它. 类 Queue.PriorityQueue(maxsize=0) 链接 2:堆实现http://docs.python.org/library/he ..
发布时间:2022-01-21 11:43:20 Python

我什么时候使用优先队列?

我所知道的使用优先级队列的唯一示例是 Dijkstra 算法(用于计算最小成本) 在其他什么情况下它会有用? 解决方案 这是一个实际的例子 - 用于业务应用程序: 您正在经营一家医院,并且有病人进来.工作人员只有一名医生.第一个男人走进来——他马上就上菜了.接下来,一个感冒的人进来并需要帮助.您将他添加到队列中,他会排队等候医生有空.接着,一个头上插着斧头的人从门里走了进来.他 ..
发布时间:2022-01-21 11:42:42 其他开发

优先级队列删除具有相同优先级的项目第一个进入

我创建了一个优先级队列,它可以按顺序输入项目并按顺序删除它们.即使两个数字具有相同的优先级,它也会删除第一个输入的数字. 如果存在三个具有相同优先级的数字,则不会删除第一个.我将如何去做,还是应该这样做? 出队函数: public void deQueue(Animal item){item = items.elements[0];items.elements[0] = items. ..
发布时间:2022-01-21 11:40:41 C#/.NET