- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图综合实验
实验报告
实验名称: 图综合实验 ;
一、 实验目的
1、 熟悉图的基本操作。
2、 掌握利用Prim算法求图的最小生成树。
3、 加深对图的理解,逐步培养解决实际问题的编程能力。
二、 实验环境
Windows 7 + Visual Studio 2008
三、 实验内容和步骤
实验内容:
①编写一个程序,对于如下的无向带权图,利用Prim算法输出从顶点0出发的最小生成树。
②给定n个村庄之间的交通图。若村庄i和j之间有路可通,则i和j用边连接,边上的权值Wij表示这条道路的长度。现打算在这n个村庄中选定一个村庄建一所医院。编写如下算法:
求出该医院应建在哪个村庄,才能使距离医院最远的村庄到医院的路程最短。
求出该医院应建在哪个村庄,能使其它所有村庄到医院的路径总和最短。
?
实验步骤:
算法很简单,第一题就是赤裸裸的Prim。进行n次循环,每次循环找出对应的离已生成的树最小权值的点加进去。
第二题求一次弗洛伊德各点到各点的最短路,然后第一小题就是求出医院在各地点时的最远村庄的最小值,第二小题是求出总的最小值即可。为了编码方便,写了两个参数宏MIN和MAX。
四、 遇到问题及解决方案
对于弗洛伊德倒没什么好说的,3个for解决问题。而在进行Prim最短路的时候,以一个结构体数组代替两个数组是一种比较好的选择。
五、 实验感想
Prim和Floyd是图论中常用的两种算法。其中Prim的思想和Dijkstra最短路算法思想有异曲同工之妙。对于时间复杂度来说,Prim是O(n2)的而Floyd是O(n3)的,但是对于求解的状况不同,一种是单源的而另一种是多源的。在实际应用中就需要有所权衡。
六、 附件
Code:
/**?
?*?@brief?图论综合实验?
?*?@author?朱凯迪?
?*?@date?2010-12-13?
?*/??
#include?iostream??
#include?cstring??
using?namespace?std;??
??
/**?一些宏?*/??
#define?MAXV?50??
#define?INF?2147483647??
#define?MIN(a,?b)?((a??b??-1?!=?a)???a?:?b)??
#define?MAX(a,?b)?((a??b??-1?!=?b)???a?:?b)??
??
/**?图的结构体?*/??
struct?Graph?{??
????int?dis[MAXV][MAXV];??
????int?e,?v;??
};??
??
struct?Cost?{??
????int?num,?cost;??
};??
??
const?Graph?G?=?{??
????{??
????????{?0,?5,?8,?7,?-1,?3?},??
????????{?5,?0,?4,?-1,?-1,?-1?},??
????????{?8,?4,?0,?5,?-1,?9?},??
????????{?7,?-1,?5,?0,?5,?6?},??
????????{?-1,?-1,?-1,?5,?0,?1?},??
????????{?3,?-1,?9,?6,?1,?0?}??
????},??
????20,??
????6??
};??
Graph?NewG;??
??
/**?输出矩阵?*/??
void?OutputMatrix(const?Graph?G)??
{??
????printf(输出矩阵:/n);??
????for(int?i?=?0;?i??G.v;?i++)??
????{??
????????for(int?j?=?0;?j??G.v;?j++)??
????????????printf(%4d,?G.dis[i][j]);??
????????printf(/n);??
????}??
}??
??
/**?普利姆算法函数?*/??
int?Prim(Graph?G,?int?v)??
{??
????Cost?lowcost[MAXV];??
????int?min;??
????int?i,?j,?k;??
????int?ans?=?0;??
??
????/**?初始化?*/??
????for(i?=?0;?i??G.v;?i++)??
????{??
????????lowcost[i].cost?=?G.dis[v][i];??
????????lowcost[i].num?=?v;??
????}??
????pr
您可能关注的文档
- 发电厂工程-在线作业_B.doc
- 发电部2014年节能经济运行措施(灰水化学).doc
- 发生在广西师范大学的凄美爱情故事.doc
- 变更煤炭经营资格登记事项申请表.doc
- 古代诗歌答题模式.doc
- 发文本1.doc
- 古诗词简析.doc
- 另附的答案.doc
- 叶片式多功能气液分离器.doc
- 台湾的亚高山生态系简介.doc
- 2025年制造业供应链协同与供应链金融服务创新案例分析报告.docx
- 2025年数码产品跨境电商品牌化运营品牌形象设计研究.docx
- 2025年制造企业智能化改造产业生态构建与竞争力分析报告.docx
- 2025年宠物医疗跨境远程会诊平台市场用户行为分析与市场细分策略报告.docx
- 2025年文具礼品电商跨境保税仓仓储流程优化与效率提升报告.docx
- 2025年文具礼品跨境电商保税仓储扩建项目项目可行性研究报告编制要点.docx
- 2025年文具礼品行业跨境电商分析报告:保税仓储扩建项目可行性研究及政策影响.docx
- 2025年在线教育行业学员流失原因与教学效果评估体系构建报告.docx
- 2025年教育管理决策智能化路径:人工智能在教育中的应用场景与解决方案探讨.docx
- 2025年户外露营装备共享租赁平台行业机遇与挑战研究报告.docx
文档评论(0)