实验五:分枝限界法_最短路径问题选编
HUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGY
算法设计与分析
实 验 报 告
实验项目实验五实验类别验证性学生姓名王龙学生学号201400797完成日期2016-5-6指导教师刘振章实验成绩评阅日期评阅教师刘振章
实验五:分枝限界法
【实验目的】
应用分枝限界法的算法设计思想求解单源最短路径问题。
【实验性质】
验证性实验。
【实验内容与要求】
采用分支限界法编程求源点0到终点6的最短路径及其路径长度。
要求完成:⑴算法描述⑵写出程序代码⑶完成调试⑷进行过程与结果分析。
【算法思想及处理过程】
由于要找的是从源到各顶点的最短路径,所以选用一个数组存起来.
Fenzhi函数: 由于先前赋值时, 用一个二维数组将结点的有向图标记存起来了( 有边为1, 无边为0 ),并且又用另外一个二维数组将其权重存起来了; 首先, 通过双重for循环, 通过if语句判断, 如果标记为1, 并且相加的权重小于先前最优权重( 在初始化的时候, 对最优权重赋上一个最大值 ), 则求得最优权重, 并且用一维数组将权重存起来, 而且用一维数组将前驱结点存起来.你然后, 一直循环下去, 直到循环到目的结点.
【程序代码】
# include stdio.h
# define MAX 9
void input (int d[]
原创力文档

文档评论(0)