- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构与算法
课程设计报告
题目:n个城市连接的最小生成树
班级:1101211
学号:1110121137
姓名:小张
教师:
周期:2013年6月4日——6月28
(以下由验收教师填写)
成绩:
2013 年6月 27日
提问:
使用的什么算法?
好处?
都实现了哪些功能?
在程序的哪里体现的?
《n个城市连接的最小生成树》
一、课程设计Typedef struct
{
DataType list[Maxsize];
Int size;
}SeqList;
其中,DataType为数组(即数据元素)的数据类型,Maxsize表示数组的最大元素个数,list表示顺序表的数组名,size表示顺序表中当前存储的数据元素个数,它必须满足size= Maxsize,SeqList是该结构体的名称。
4、主要功能逻辑过程和实现算法
创建用邻接矩阵表示的城市道路网 输入城市属N=7
道路数e=20 输入城市a[] 输入表示两个城市间距离
RowColWeight rcw[] 返回 图1 创建邻接矩阵流程图
判断程序是否为真 Prim算法 用铺助数组lowCost[] 输入初始城市序号j for(i=1;in;i++) 初始化
lowCost[i]=G.edge[j][i]从结点O出发构造最小生成树 结点寻找当前最小权值的边所对应的弧头
minCost=MaxWeight 输出找到的道路 标记城市 输出总代价 判断是否继续:1-继续;2-退出 1:返回程序开始处
2:退出 结束 Prim算法流程图
5、界面设计
6、系统测试
1.
typedef int DataType;
typedef struct
{
DataType list[MaxSize];
int size;
}SeqList;
2.
int GetFirstVex(AdjMGraph G,int v)
/*在图G中寻找序号为v的结点的第一个邻接结点*/
/*如果这样的邻接结点存在,返回该邻接结点的序号;否则,返回-1*/
{
int col;
if(v0 || vG.Vertices.size)
{
printf(参数v1越界出错!\n);
exit(1);
}
for(col=0;colG.Vertices.size;col++)
if(G.edge[v][col]0 G.edge[v][col]MaxWeight) return col;
return -1;
}
3.
int main(void)
{
while(1)
{
AdjMGraph g;
char a[]={A,B,C,D,E,F,G};
RowColWeight rcw[]={{0,1,50},{1,0,50},{0,2,60},{2,0,60},{1,3,65},{3,1,65},{1,4,40},{4,1,40},{2,3,65},{3,2,65},{2,6,45},{6,2,45},{3,4,50},{4,3,50},{3,5,30},{5,3,30},{3,6,42},{6,3,42},{4,5,70},{5,4,70}};
int n=7,e=20;
int i,j;
int worth=0;
MinSpanTree closeVertex[7];
CreatGraph(g,a,n,rcw,e);
三、小组成员分工说明
独立完成
四、课程设计总结或结论
1 课程设计过程中出现的技术难点和解决方法:
∞ 50 60 ∞ ∞ ∞
50∞∞6540∞∞
GE= 60∞∞52∞∞45
∞65 52 ∞70∞
∞40∞50∞70∞
∞∞∞60 70∞∞
∞∞45 42 ∞∞∞
2 课程设计期间的主要收获:
通过本次实验我大体掌握了图的基本操作设计与实现并学会利用Prim算法求最小生成树。虽然做出来了,但我花费时间很多,还有一些代码很难理解所以出现很多错误。但总的来说这次的课程设计提高了个人运用所学知识解决实际问题的能力。
3 对今后课程设计的建议
希望时间能更加充裕
五、参考文献
[1] 龚丹,梁兴柱,王静.数据结构与算法.清华大学出版社,2010.10(1
您可能关注的文档
- HPLC高效液相色谱分析实验.doc
- lx3.3细胞核──系统的控制中心.doc
- PL-11血小板分析仪CX21-01定量检验系统(方法)性能验证报告.doc
- SARPSInSARDInSAR基线估算地下水开采煤矿开采沉陷时间序列分析论文.doc
- S集团如何面对激烈的产业竞争--外部环境分析.doc
- wincc的n个经典问题解答40263.doc
- 《C.net程序设计课件》(资料全集)c11.ppt
- 备品、备件及专用工具管理制度40533.doc
- 03第一章材料合成化学的热点及研究进展1.2有机合成化学(续).ppt
- 波长色散X射线荧光光谱法测定红土镍矿及电炉渣中镍、铁、硅、镁、钙、磷、铝、锰、铬、钴.doc
文档评论(0)