数据结构小学期-算法演示程序实验报告(5)
石家庄铁道大学实习报告
}
cout << \已知最短路径的结点为: v\ G[minIndex].isKnown = true; //将其加入最短路径已知的顶点集
D_Node *node = G[minIndex].link; // 将以minIndex为起始顶点的所有的d更新 while (node != NULL) {
int begin = minIndex + 1; int end = node->adjvex + 1;
int weight = getWeight(G, begin, end); if (G[minIndex].d + weight < G[end-1].d) { G[end-1].d = G[minIndex].d + weight;
G[end-1].parent = minIndex; //记录最短路径的上一个结点 }
node = node->next; } } }
//打印到end-1的最短路径
void printPath(HeadNode *G, int end) { if (G[end-1].parent == -1) { cout << \ } else if (end != 0) {
printPath(G, G[end-1].parent + 1); // 因为这里的parent表示的是下标,从0开始,所以要加1
cout << \ } }
//调用迪杰斯特拉的相关代码 void show_Dijkstra() {
HeadNode *G; //头结点
int nodeNum, arcNum; //顶点个数,边的个数 cout << \请输入顶点个数,边的个数: \ cin >> nodeNum >> arcNum;
G = new HeadNode[nodeNum];
createGraph(G, nodeNum, arcNum); //创建图 cout << \ cout << \下面开始打印图信息...\
printGraph(G, nodeNum); //打印图 cout << \ cout << \下面开始运行dijkstra算法...\
Dijkstra(G, nodeNum, 1); //运行Dijkstra算法 cout << \ cout << \打印从v1开始所有的最短路径\ for (int k = 2; k <= nodeNum; k++) {
cout << \到v\的最短路径为\
21 / 22
石家庄铁道大学实习报告
printPath(G, k); //打印最短路径 cout << endl; } }
//------------------------------------------Dijkstra算法结束
---------------------------------------------------------------// //菜单
void menu(){
cout<<\欢迎来到算法演示程序****************************************\
cout<<\算法 2.Kruskal算法\ cout<<\算法 4.Dijkstra算法\
cout<<\退出\}
void main(){
menu();int i; while(1){
cout<<\请选择您的操作:\ switch(i){
case 1:cout<<\接下来运行Prim算法...\
case 2:cout<<\接下来运行Kruskal算法...\ case 3:cout<<\接下来运行Floyd算法...\
case 4:cout<<\接下来运行Dijkstra算法...\ case 5:cout<<\退出成功,欢迎下次登录。。。\ default:cout<<\输入错误。\
} //switch结束 if(i!=5)continue; else break;
} //while循环结束 }
22 / 22
相关推荐:
- [法律文档]苏教版七年级语文下册第五单元教学设计
- [法律文档]向市委巡视组进点汇报材料
- [法律文档]绵阳市2018年高三物理上学期第二次月考
- [法律文档]浅析如何解决当代中国“新三座大山”的
- [法律文档]延安北过境线大桥工程防洪评价报告 -
- [法律文档]激活生成元素让数学课堂充满生机
- [法律文档]2014年春学期九年级5月教学质量检测语
- [法律文档]放射科标准及各项计1
- [法律文档]2012年广州化学中考试题和答案(原版)
- [法律文档]地球物理勘查规范
- [法律文档]《12系列建筑标准设计图集》目录
- [法律文档]2018年宁波市专技人员继续教育公需课-
- [法律文档]工会委员会工作职责
- [法律文档]2014新版外研社九年级英语上册课文(完
- [法律文档]《阅微草堂笔记》部分篇目赏析
- [法律文档]尔雅军事理论2018课后答案(南开版)
- [法律文档]储竣-13827 黑娃山沟大开挖穿越说明书
- [法律文档]《产品设计》教学大纲及课程简介
- [法律文档]电动吊篮专项施工方案 - 图文
- [法律文档]实木地板和复合地板的比较
- 探析如何提高电力系统中PLC的可靠性
- 用Excel函数快速实现体能测试成绩统计
- 教师招聘考试重点分析:班主任工作常识
- 高三历史选修一《历史上重大改革回眸》
- 2013年中山市部分职位(工种)人力资源视
- 2015年中国水溶性蛋白市场年度调研报告
- 原地踏步走与立定教学设计
- 何家弘法律英语课件_第十二课
- 海信冰箱经销商大会——齐俊强副总经理
- 犯罪心理学讲座
- 初中英语作文病句和错句修改范例
- 虚拟化群集部署计划及操作流程
- 焊接板式塔顶冷凝器设计
- 浅析语文教学中
- 结构力学——6位移法
- 天正建筑CAD制图技巧
- 中华人民共和国财政部令第57号——注册
- 赢在企业文化展厅设计的起跑线上
- 2013版物理一轮精品复习学案:实验6
- 直隶总督署简介




