腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
您能通过不完全填充
优先级
队列
来提高
Dijkstra
的
时间复杂度吗?
python
、
algorithm
、
time-complexity
、
big-o
、
dijkstra
您能通过不完全填充
优先级
队列
来提高
Dijkstra
的
时间复杂度吗?时间
的
复杂性不应该不同吗?
具有
优先级
队列
的
Dijkstra
的
正常实现 您通常为
Dijkstra
的
最短路径找到
的
实现开始用所有顶点填充
浏览 0
提问于2020-11-09
得票数 1
回答已采纳
1
回答
如果使用最大
优先级
队列
,
Dijkstra
算法是如何工作
的
?
c++
、
algorithm
、
graph-algorithm
、
dijkstra
我最近看了一些
Dijkstra
算法
的
代码。代码
的
目标是找到从顶点1到顶点N
的
最小成本路径。我在查看问题
的
解决方案时遇到了以下工作代码: void
dijkstra
(int start, int n) { dist[; q.push(end); } } 该程
浏览 30
提问于2020-04-26
得票数 0
回答已采纳
1
回答
单源最短路径实现:
优先级
与FIFO
队列
queue
、
priority-queue
、
dijkstra
、
shortest-path
、
bellman-ford
根据问题
的
具体情况,在单源最短路径问题中通常提到
的
两种算法是
Dijkstra
算法和Bellman算法。
Dijkstra
的
算法工作在正边权值,而Bellman算法是一个推广,也允许负边权。正如Sedgewick
的
“算法”(第4版)所实现
的
,
Dijkstra
的
算法是基于
优先级
队列
的
,而Bellman-Ford算法是基于一个普通
的
FIFO
队列
的
浏览 7
提问于2015-04-18
得票数 0
5
回答
编程竞赛最好
的
单源最短路径算法是什么?
c++
、
algorithm
、
graph
我是从UVa问题集中做
的
。这是一个没有负边权重
的
单源最短路径问题。据我所知,对于此类问题,
具有
最佳大O运行时间
的
算法是
Dijkstra
,使用斐波那契堆作为
优先级
队列
,尽管实际上二进制堆更容易实现,并且工作得也很好。然而,似乎即使是二进制堆也需要相当长
的
时间才能滚动,而且在比赛中时间是有限
的
。我知道STL提供了一些堆算法和
优先级
队列
,但它们似乎没有提供
Dijkstra
需要
的<
浏览 4
提问于2009-12-08
得票数 1
回答已采纳
1
回答
Dijkstra
的
算法漏掉了什么边缘情况?
python
、
dijkstra
这是我
的
Dijkstra
的
实现。它正在传递pytest input.n.txt文件中
的
所有情况,但是当我提交评分软件(不提供测试或任何输出)时,我得到
的
结果无效。import sys seen我真的很难把它放在一起,不是因为我不理解
Dijkstra
算法,而是因为很难调整
浏览 2
提问于2021-08-30
得票数 0
回答已采纳
1
回答
搜索需要减少键操作吗?
algorithm
、
a-star
Dijkstra
的
最短路径算法需要一个
具有
减少键操作
的
优先级
队列
,如和中所指出
的
那样。 这两个源都没有指示A*搜索中使用
的
优先级
队列
是否需要减少键操作(,)。但维基百科文章中
的
伪代码包括行fScore[neighbor] := tentative_gScore + h(neighbor),这似乎会影响
优先级
队列
中元素
的
排序。我知道,从技术上讲,即
浏览 11
提问于2022-08-22
得票数 1
回答已采纳
1
回答
索引
优先级
队列
是否确实加快了
dijkstra
的
速度?
algorithm
、
data-structures
、
graph
、
graph-algorithm
、
dijkstra
“懒惰”
dijkstra
的
最短路径算法
的
渐近时间复杂度为O(Elog(V)),它使用规则
优先级
队列
而不是索引堆。这意味着会有重复
的
节点,算法必须跳过这些节点,但是不管如何处理。解决这个问题
的
一个解决方案是使用索引
优先级
队列
,但我对它在实际生活中和使用大O时是否真的比惰性版本更快感到困惑,因为懒惰版本仍然跳过算法中
的
重复节点。通过一些研究,我还发现索引
dijkstra
比惰性实现
的
O(
浏览 1
提问于2021-08-29
得票数 2
回答已采纳
1
回答
在后续
Dijkstra
算法实现
的
时间复杂度之间混淆
java
、
algorithm
、
dijkstra
我试图用java中
的
邻接表来实现
Dijkstra
。我在java中遇到了
Dijkstra
的
一个实现,但我搞不清它是O(ElogV)解决方案还是0(V^2)解决方案。代码
的
链接是:。我之所以感到困惑,是因为在c++中对
Dijkstra
的
优化实现涉及到
优先级
队列
的
使用,但这里没有使用
优先级
队列
。
浏览 3
提问于2014-09-28
得票数 0
1
回答
具有
优先级
队列
的
Dijkstra
(
Python
)
python
、
graph
、
queue
、
traversal
、
dijkstra
我一直在尝试使用
Dijkstra
算法,并在
Python
中实现了
优先级
队列
和距离表。这是
优先级
队列
实现: from heapq import heapify, heappush, heappop di
浏览 43
提问于2020-07-20
得票数 1
回答已采纳
3
回答
负边有向无圈图
的
Dijkstra
算法
algorithm
、
dijkstra
、
directed-acyclic-graphs
如果是无圈图(DAG),
Dijkstra
的
算法会在负边图上工作吗?我认为这是因为由于没有循环,所以不可能有负循环。这个算法会失败还有其他原因吗? 谢谢明天
的
期中考试
浏览 4
提问于2015-03-11
得票数 6
回答已采纳
1
回答
指向不同类
的
方法
的
函数指针
c++
、
class
我有一个图类Graph和两个
优先级
队列
的
Pqueue1和Pqueue2类。两个
优先级
队列
都有表单Pqueuei(Graph &g)
的
构造函数,其中i = 1,2,它们都有一个方法
Dijkstra
,该方法
的
形式是:void
Dijkstra
(Node*)。现在,我想编写一个函数,根据某些条件(g
的
密度)构造两种类型
的
优先级
队列
,然后调用相关
的</em
浏览 3
提问于2017-01-04
得票数 0
回答已采纳
1
回答
Dijkstra
算法
的
时间复杂度
time-complexity
、
runtime
、
dijkstra
据我所知,在最坏
的
情况下,使用
队列
的
未加权图上
的
Dijkstra
算法
的
时间复杂度是O(n2)。我猜想这是因为od bfs和dfs。BFS在标记阶段处理所有顶点,dfs用于回溯。它们都
具有
线性时间复杂度。但我不确定这个逻辑是否正确。 另外,对于加权图,我知道时间复杂度是O(EVlogV),其中E是边和V顶点。我认为这是因为
优先级
队列
,我知道
优先级
队列
是如何工作
的
,但仍然不理解O符号。
浏览 26
提问于2020-06-04
得票数 0
1
回答
具有
最小
优先级
队列
的
Dijkstra
算法
graph
、
path
、
priority-queue
、
dijkstra
、
shortest-path
我正在尝试用
优先级
队列
实现
dijkstra
算法,但我不能理解它是如何工作
的
。我在网上读了很多指南,但我根本不能理解这个算法。第二个问题,当我提取
队列
的
根时,如果这个节点不与任何被访问
的
节点相邻,它是如何工作
的
?
浏览 0
提问于2013-08-19
得票数 18
回答已采纳
3
回答
如何在字典中存储
的
图形上启动
Dijkstra
算法
python
、
algorithm
、
dictionary
、
graph-algorithm
、
dijkstra
我想实现
Dijkstra
的
最短路径算法,我使用一个多级字典来表示我
的
图。但是,如果用户输入一个起点和一个结束点,我将面临一个问题,使用这个for循环在字典中搜索我
的
起点:for start in g:print start你能提出解决
浏览 7
提问于2015-05-02
得票数 1
回答已采纳
1
回答
优先级
队列
的
最小堆与普通数组实现
performance
、
heap
、
priority-queue
、
dijkstra
什么时候在
Dijkstra
中实现
优先级
队列
作为最小堆是最好
的
,什么时候使用普通数组更好?我假设在
Dijkstra
中一个简单
的
最小
优先级
队列
的
数组实现是更好
的
,但不能真正想到一种情况。
浏览 0
提问于2017-11-10
得票数 2
1
回答
理解
Dijkstra
优先级
队列
实现
的
困难
algorithm
、
shortest-path
我很难理解实现
Dijkstra
的
逻辑流程是什么,更确切地说,我遇到
的
问题是如何得到
优先级
队列
,在图上执行算法时是否构建它(
优先级
队列
)?还是我看错了?那就是这样吗?我们是在此停止,还是通过将获取
的
信息以其他形式放置在
优先级
队列
中来进一步处理该输出,还是在这里停止?我还理解了为选择
的
节点生成相应
的
最短路径
的
过程,首先递归地按照我们所取
的
边形成最短路
浏览 2
提问于2020-04-23
得票数 0
回答已采纳
2
回答
边权有限
的
图上
的
Dijkstra
算法
algorithm
、
dijkstra
假设我们想在一个图上运行
Dijkstra
的
算法,该图
的
边权值是范围{1,2,...,W}中
的
整数,其中W是一个相对较小
的
数。如何在s中找到从顶点t到t
的
最短路径 我从S. Dasgupta,C.Vazirani
的
书算法中遇到了这个问题。我可以证明,如果我们像以前一样实现
Dijkstra
算法,那么在每次迭代时,
优先级
队列
中节点
的
距离范围将在W内。但是,由于
优先级
队列
浏览 4
提问于2013-04-29
得票数 2
1
回答
引用到
优先级
队列
中
的
节点(迭代器)
c++
我试图用实现
Dijkstra
的
算法(因为我需要跟踪离源节点最近
的
节点)。 问题是:当探索一个节点时,它可能会链接到
优先级
队列
中尚未发现
的
另一个节点(即
优先级
队列
的
一个元素)。
优先级
队列
似乎不支持迭代器,当发现与其关联
的
节点时,如何将引用到
优先级
队列
元素?
浏览 2
提问于2015-06-24
得票数 1
回答已采纳
2
回答
Dijkstra
的
算法--如何使用
优先级
队列
或最小堆?
c++
、
algorithm
、
queue
、
priority-queue
、
dijkstra
我一直在努力实现
Dijkstra
的
算法;更具体地说,就是
优先级
队列
的
部分。将顶点添加到数据结构中,并使用迭代器遍历所有顶点并找到最小距离;这很容易,但时间不长。我想要
的
是: 我认为,要使
Dijkstra
算法正常工作,您应该能够在恒定时间内插入顶点,并在log(n)时间中提取它们;我被建议使用
优先级
队列
和最小堆,但对我来说,保持
队列<
浏览 2
提问于2014-02-21
得票数 2
回答已采纳
1
回答
在
Dijkstra
算法中查找
具有
优先
队列
的
Python
目标节点
python
、
algorithm
我使用邻接列表实现了一个图,我想让它与
Dijkstra
的
算法一起工作。我不知道我是否已经脑死亡,但我想不出一种方法,使
优先级
队列
版本找到最短
的
路径从源头到开始。我读过维基百科
的
网页,但这还不够。False print("File not found") def
dijkstra
浏览 1
提问于2014-09-23
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
可修改内容的优先级队列
50行Python代码实现简单的任务队列
消息队列RabbitMQ原理及其Python客户端pika的使用
10个具有启发性的python项目
Python的5个具有潜力的发展方向!
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
云直播
活动推荐
运营活动
广告
关闭
领券