1 / 19
文档名称:

最短路径与标号法.doc

格式:doc   大小:71KB   页数:19页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

最短路径与标号法.doc

上传人:drp539609 2019/3/29 文件大小:71 KB

下载得到文件列表

最短路径与标号法.doc

文档介绍

文档介绍:前面我们学****过动态规划的应用,图中没明显阶段求最短路径的问题属于无明显阶段的动态规划,通常用标号法求解,求最短路径问题是信息学奥赛中很重要的一类问题,许多问题都可转化为求图的最短路径来来解,图的最短路径在图论中有经典的算法,本章介绍求图的最短路径的dijkstra算法、Floyed算法,以及标号法。一、最短路径的算法1、单源点最短路径(dijkstra算法)给定一个带权有向图G=(V,E),其中每条边的权是一个非负实数,另外,还给定V中的一个顶点,称为源点。求从源点到所有其他各顶点的最短路径长度。这个问题称为单源最短路径问题。求单源最短路径可用dijkstra算法求解。(dijkstra算法)算法思想:设源点为x0,dist[i]表示顶点i到源点x0的最短路径长度,map[i,j]表示图中顶点i到顶点j的长度,用数组mark对所有的顶点作标记,已求出源点到达该点J的最短路径的点J记为mark[j]=true,否则标记为false。初始时,对源点作标记,然后从未作标记的点中找出到源点路径长度最短的顶点minj,对该顶点作标记,并对其它未作标记的点K作判断:ifdist[minj]+map[minj,k]<dist[k]thendist[k]=dist[minj]+map[minj,k]。重复处理,直到所有的顶点都已作标记,这时求出了源点到所有顶点的最短路径。算法过程:constmaxn=100;varmap:array[1..maxn,1..maxn]ofinteger;dist:array[1..maxn]ofinteger;mark:array[1..maxn]ofBoolean;n,k:integer;proceduredijkstra;varI,j,min,minj,temp:integer;beginfillchar(mark,sizeof(mark),0);forI:=1tondodist[i]:=maxint;dist[k]:=0;forI:=1ton-1dobeginmin:=maxint;forj:=1tondoif(notmark[j])and(dist[j]<min)thenbeginmin:=dist[j];minj:=j;end;mark[minj]:=true;forj:=1tondoif(notmar[j])and(map[minj,j]>0)thenbegintemp:=dist[minj]+map[minj,j];iftemp<dist[j]thendist[j]:=temp;end;end;end;以上只是求出了从源点到其它所有点的最短路径长度,所经过的具体路径没有保存,如果要求出具体的路径来,那么在求最短路径的过程中要将经过的中间点记录下来。下面通过例题来说明最短路径的求解。例1:最短路径问题下面给出某市各镇间路线网络图,市汽车站在市区A,现要求出市汽车站到各镇区的最短路径长度。B8E121510914A301015F1113DC数据输入:,第一行为镇区个数N,以下有N行,每行N个数据,在数据阵中,第i行第j列的数表示城镇i到城镇j的距离。最后一行为市区中心所在位置的编号。,共有N-1行,每行由市区到达的镇区号、最短路径长度。**********分析:本题是典型的求单源最短路径问题,本直接用dijkstra算法求解。程序如下:programcity;constmaxn=100;varmap:array[1..maxn,1..maxn]ofinteger;dist:array[1..maxn]ofinteger;mark:array[1..maxn]ofBoolean;n,k:integer;first,i,j,min,minj,temp:integer;fin,fout:text;beginassign(fin,’’);assign(fout,’’);reset(fin);rewrite(fout);readln(fin,n);fori:=1tondobeginforj:=1tondobeginread(fin,map[i,j]);ifmap[i,j]=0thenmap[i,j]:=maxint;end;readln(fin);end;readln(fin,first);close(fin);fillchar(mark,sizeof(mark),0);k:=first;forI:=1tondodist[i]:=map[k,i]

最近更新

基于局部不变特征的航空影像自动匹配方法研究.. 2页

2024年工程部个人工作总结(精选15篇) 53页

硫酸异帕米星耐药的分子基础 31页

基于地震动特征的非线性动力吸振器减震性能分.. 2页

基于可拓学的供应链战略合作伙伴的选择与评价.. 2页

基于智能创可贴的伤口自诊断系统 30页

2024年工程承包合同15篇(精华) 53页

可持续旅游推荐 31页

基于动态聚类分析的广告投放技术研究与实现中.. 2页

基于副载波复用的光标记识别提取技术的研究的.. 2页

2024年工程合同10篇[必备] 36页

基于共同作者图的合作者推荐系统的开题报告 2页

基于全寿命周期的掘进机可靠性工程平台建设中.. 2页

基于光电传感器的地震波检测技术研究的开题报.. 2页

2024年工厂租赁合同(通用15篇) 40页

2024年工厂普通员工个人总结(15篇) 34页

2024年工厂员工的辞职申请书 16页

桔梗麻黄碱糖浆的代谢组学分析 31页

2024年工作证明范本 9页

椎管内肿瘤概述高小龙PPT课件 24页

2023年消防救援站党支部工作总结 4页

慢性胃炎中医症候评分表格模板2 3页

教师心得体会师德感悟篇范文2023年 9页

学校食堂6s管理内容和标准四篇 51页

夹江陶瓷产业发展历程和基本概况 5页

超声科质量控制评分表(共1页) 1页

医院管理精品-康复科脑梗塞恢复期单病种诊疗规.. 3页

尊师开示 7页

十五种解经讲道法(1) 55页

张宏宝尊师谈养生修炼的利与弊 10页