版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Dijkstras Algorithm,解决无负权边的带权有向图或无向图的单源最短路问题 贪心思想,若离s前k-1近的点已经被确定,构成点集P,那么从s到离s第k近的点t的最短路径,s,p1,p2pi,t满足s,p1,p2piP。 否则假设piP,则因为边权非负,pi到t的路径0,则dpidt,pi才是第k近 di=min(dpi+cost(pi,i),iP,piP dt=min(di) ,iP,Dijkstras Algorithm,初始令ds=0,di=+,P= 找到点iP,且di最小 把i添入P,对于任意jP,若di+cost(i,j)dj,则更新dj=di+cost(i,j)。 时间复
2、杂度O(V2+E) Dijkstra+堆的时间复杂度 o(ElgV) 用斐波那契堆可以做到O(VlogV+E),0,4,2,3,1,50,200,200,1000,3000,10000,8000,5000,10000,1000,3000,250,250,8250,5250,Dijkstras Algorithm,Dijkstra算法也适用于无向图。但不适用于有负权边的图。,2,3,1,-2,3,4,d1,2 = 2 但用Dijkstra算法求得 d1,2 = 3,POJ3159 Candies,有N个孩子(N=3000)分糖果。有M个关系(M=150000)。每个关系形如: A B C 表示第
3、B个学生比第A个学生多分到的糖果数目,不能超过C 求第N个学生最多比第1个学生能多分几个糖果,POJ3159 Candies,有N个孩子(NB的有向边,权值为C 然后求1到N的最短路,用prioirty_queue实现 dijkstra + 堆的 POJ 3159 Candies,/by guo wei #include #include #include #include #include using namespace std; struct CNode int k; /端点 int w; /权值,或k到已经求出最短路的那些点的最短距离 ; bool operator d2.w; /pri
4、ority_queue总是将最大的元素出列 int aDist30010; priority_queue pq; bool bUsed30010=0; /vector v30010; error,如果用这个,则在poj会超时。说明vector对象的初始化,也是需要可观时间的 vector v; const unsigned int INFINITE = 100000000;,int main() int N,M,a,b,c; int i,j,k; CNode p, q; scanf(%d%d, ,while( !pq.empty () p = pq.top (); pq.pop(); if( bUsedp.k) /已经求出了最短路 continue; bUsedp.k = true; if( p.k = N ) break; for( i = 0, j = vp.k.size(); i j; i + ) q.k = vp.ki.k; if( bUsedq.k ) continue; q.w = p.w +
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 磁生电知识点
- 矮个子女生穿搭课件
- 督导培训员工内容
- 2026年汽车维修工技能等级考试发动机维修案例题
- 2026年中医药学基础知识及临床实践考核题
- 2026年金融知识精准测试题金融市场规则与操作标准
- 湖北沙市中学2025-2026学年高二上学期1月月考物理试题
- 2026年市场营销策略与管理专业考试题集
- 2026年金融投资顾问资格考试备考题初级
- 2026年酒店服务与管理岗位笔试试题
- 2026年安徽马鞍山市高三高考一模数学试卷试题(含答案详解)
- (2025年)一级人力资源管理师考试真题及答案
- 生产车间首检巡检制度
- 摄食训练技术
- 2026年中考物理全真模拟试卷及答案(共五套)
- 备战高考:高三班级管理与激励策略
- 2025年生物多样性保护与生态修复项目可行性研究报告
- 临床检验科主任:检验技术在临床应用与质量控制
- 等离子切割技术应用要点
- 老年人抑郁症宣教
- 2025年无人船行业分析报告及未来发展趋势预测
评论
0/150
提交评论