- 1、本文档共551页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
Prim算法的符号表示(1)U={u0},T={};(2)while(U≠V)do(u,v)=min{wuv;u∈U,v∈V-U}T=T+{(u,v)}U=U+{v}(3)结束具体的操作示意图Prim算法的操作示意图动态过程Prim算法实现动态过程lowcostClosevertex从V0出发用Prim算法求最小生成树的过程i=1i=2i=3i=4i=5i=60123456kmincost05060∞∞∞∞00000000060∞∞65400001100150440006070∞500000414035000523042000034133005204200530003413364200450000006413324500000000064133#defineINFINITY30000//定义一个权值的最大值#defineMaxVertexNum30//最大顶点数为30typedefstruct{intadjvertex;//某顶点与已构造好的部分生成树的顶点之间权值最小的顶点intlowcost;//某顶点与已构造好的部分生成树的顶点之间的最小权值}ClosEdge;//定义普里姆算法求最小生成树时的辅助数组元素类型ClassMGragh{public:MGragh(){}//缺省构造函数voidCreatGraph();//建立图的存储矩阵成员函数voidMGragh::BFStraverse();//广度遍历图voidMGragh::BFS(intv);//从顶点v开始广度遍历图voidMiniSpanTree_PRIM(intu);Prim算法的C++实现:private:VertexTypevertexs[MaxVertexNum];//顶点表Edgetypearcs[MaxVertexNum][MaxVertexNum];//邻接矩阵,即边表intvertexNum,edgeNum;//顶点数和边数ClosEdgeclose_edge[MaxVertexNum];//存放最小生成树数组intvisited[MaxVertexNum];//访问标志数组};Prim算法的C++实现://MGragh是以邻接矩阵存储的图类voidMGragh::MiniSpanTree_PRIM(intu){//从第u个顶点出发构造图G的最小生成树,最小生成树顶点信息存放在数组close_edge中inti,j,w,k;for(i=0;ivertexNum;i++)//辅助数组初始化if(i!=u){close_edge[i].adjvertex=u;close_edge[i].lowcost=arcs[u][i];}close_edge[u].lowcost=0;//初始,U={u}for(i=0;ivertexNum-1;i++)//选择其余的G.vertexNum-1个顶点{w=INFINITY;for(j=0;jvertexNum;j++)//在辅助数组close_edge中选择权值最小的顶点if(close_edge[j].lowcost!=0close_edge[j].lowcostw){w=close_edge[j].lowcost;k=j;}//求出生成树的下一个顶点kclose_edge[k].lowcost=0;//第k个顶点并入U集for(j=0;jvertexNum;j++)//新顶点并入U后,修改辅助数组if(arcs[k][j]close_edge[j].lowcost){close_edge[j].adjvertex=k;close_edge[j].lowcost=arcs[k][j];
您可能关注的文档
- 物联网技术导论与实践.ppt
- 数据结构与算法.ppt
- 无线传感器网络概论.ppt
- 信息技术基础.pptx
- 秘书实务教程.pptx
- 茶文化与茶艺鉴赏.pptx
- 数据结构——使用C++语言描述(第2版).ppt
- 数据结构与算法(英文版).ppt
- 数据结构课程设计案例教程.ppt
- 物联网安全与隐私保护.pptx
- 2024福建厦门市集美小学非在编教师招聘1人笔试模拟试题及答案解析.docx
- 2024福建厦门市集美区杏北小学产假顶岗教师招聘笔试模拟试题及答案解析.docx
- 2024福建厦门杏南中学非在编(顶岗)教师招聘笔试模拟试题及答案解析.docx
- 2024年浙江宁波市鄞州人民医院医共体横溪分院招聘编外工作人员1人笔试备考试题及答案解析.docx
- 2024年台州市计量技术研究院招聘工作人员笔试备考试题及答案解析.docx
- 2024福建厦门杏南中学非在编(顶岗)教师招聘3人笔试备考试题及答案解析.docx
- 2024福建厦门外国语学校集美分校非在编招聘校医1人笔试模拟试题及答案解析.docx
- 2024福建省数字政务建设运营控股有限公司招聘工作人员笔试模拟试题及答案解析.docx
- 2024年西安电力中心医院社会招聘笔试备考试题及答案解析.docx
- 2024年下半年四川省文化馆考核招聘3人笔试备考试题及答案解析.docx
文档评论(0)