电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOCX文档下载
分享到微信 分享到微博 分享到QQ空间

迪杰斯特拉算法实验报告(共9篇)

  • 资源ID:60355664       资源大小:24.32KB        全文页数:21页
  • 资源格式: DOCX        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

迪杰斯特拉算法实验报告(共9篇)

为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划迪杰斯特拉算法实验报告(共9篇)青岛理工大学琴岛学院课题名称:数据结构课程设计青岛理工大学琴岛学院教务处XX年6月29日数据结构课程设计报告迪杰斯特拉算法的实现班级:软件1408学号:31姓名:齐瑞征指导教师:石锋完成时间:要求:基于邻接矩阵存储结构,使用迪杰斯特拉算法,计算并输出指定源点到其余各顶点的最短路径及长度。程序的输入:顶点的个数、边的个数、各个边的起点编号、终点编号和权值,源点编号。程序输出:源点到各顶点最短路径及长度。例如对于教材P141图6-16,输入数据的形式为:顶点个数:6边的个数:8第1条边的起点、终点编号及权值:0,2,10第2条边的起点、终点编号及权值:0,4,30源点编号:0以上为程序运行时输入的数据。程序输出结果如下:0号到1号的最短路径为:null,长度为无穷大0号到2号的最短路径为:0,2长度为10以上为程序输出数据。实现过程:1、在VC中建立源程序,名称为:,保存在工作文件夹中;2、在中输入以下内容:#include#include#include#include#defineMAX_NAME5/顶点字符串的最大长度+1#defineMAX_INFO20/相关信息字符串的最大长度+1typedefintVRType;/顶点关系的数据类型#defineINFINITYINT_MAX/用整型最大值代替#defineMAX_VERTEX_NUM20/最大顶点个数typedefcharInfoType;/信息的类型typedefcharVertexTypeMAX_NAME;/顶点数据类型及长度typedefenumDG,DN,AG,ANGraphKind;typedefstructVRTypeadj;InfoType*info;ArcCell,AdjMatrixMAX_VERTEX_NUMMAX_VERTEX_NUM;typedefstructVertexTypevexsMAX_VERTEX_NUM;/顶点向量AdjMatrixarcs;/邻接矩阵intvexnum,/图的当前顶点数arcnum;/图的当前边数GraphKindkind;/图的种类标志MGraph;#include""#defineMAX100/顶点最大个数#defineINFINITY99999/99999代表无穷大typedefstructintn,e;/顶点个数,边的个数intedgesMAXMAX;/存放邻接矩阵Mgraph;3、在中完成如下函数,功能是从键盘接收图的数据,存放在*g中。voidCreatemgraph(MGraph*G)inti,j,k,w,IncInfo=0;charsMAX_INFO,*info;VertexTypeva,vb;printf("请输入顶点数,边数:""(空格隔开)n");scanf("%d%d%d%*c",&(*G).vexnum,&(*G).arcnum,&IncInfo);printf("请输入%d个顶点的值()t算法。算法的输入是;输出记录为文件:;同时记录运行时间为TimeIS。3.实现快速排序算法.要求:实现QuickSort算法。算法的输入是;输出记录为文件:;同时记录运行时间为TimeQS。算法的基本思想直接插入排序:假设待排序的n个记录R0,R1,Rn顺序存放在数组中,直接插入法在插入记录Ri(i=1,2,n-1)时,记录被划分为两个区间R0,Ri-1和Ri+1,Rn-1,其中,前一个子区间已经排好序,后一个子区间是当前未排序的部分,将关键码Ki与Ki-1Ki-2,K0依次比较,找出应该插入的位置,将记录Ri插,然后将剩下的i-1个元素按关键词大小依次插入该有序序列,没插入一个元素后依然保持该序列有序,经过i-1趟排序后即成为有序序列。每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。快速排序:快速排序是基于分治模式的。假设待排序数组Ap.r。分解:数组Ap.r被划分成两个子数组Ap.q-1和Aq+1.r,使得Ap.q-1中的每个元素都小于等于A(q),而且,小于等于Aq+1.r中的元素。小标q也在这个划分过程中进行计算。解决:通过递归调用快速排序,对子数组Ap.q-1和Aq+1.r排序。合并:因为两个子数组是就地排序的,将它们合并不需要操作:整个数组Ap.r已排序。算法实现直接插入排序:voidinsert_sort(ElemTypea,intn)/待排序元素用一个数组a表示,数组有n个元素inti,j;ElemTypet;for(i=1;i=0)&&(tlength-1);intmid=0;mid=partition(list,low,hight);/endifQsort(list,low,mid-1);/对左边的无序数列进行排序Qsort(list,mid+1,hight);/对右边的无序数列进行排序intpartition(SqList*list,intlow,inthight)ElemTypemid=list->arraylow;while(lowarrayhight>=mid)swap(list,low,hight);while(lowarraylowarraylow;list->arraylow=list->arrayhight;list->arrayhight=temp;快速排序的时间复杂度是O(nlog2n)。实验结果表明:就平均计算时间而言,快速排序是我们所讨论的所有内排序方法中最好的一个。三、程序流程图1.直接插入排序程序流程图数据结构课程设计报告迪杰斯特拉算法的实现班级:软件学号:姓名:马宏伟指导教师:石老师完成时间:XX年7月5日题目:Dijkstra算法的实现一、问题分析和任务定义题目:对任意图,选择合适的数据结构表示图,在此基础上实现求解最短路径的Dijkstra算法。要求:对所设计的图的数据结构,提供必要的基本功能。具体任务:建立图的表示模块,顶点的插入和删除操作模块;在建立图之后从单源点开始求最短路径,并显示出最短路径长度及路径途径!2、实现功能:建立有向图在建立好的有向图中,显示出来从源点到其他各个顶点的最短路径长度及路径途径。3、测试用例:正确数据:a)顶点:3;边值信息:012;103;125;216;000;b)顶点:0;边值信息:000;错误数据:a)顶点:#;b)顶点:3;边值信息:01#;参考用图:图1图1.有向图问题分析:题目要求选择合适的数据结构表示图,本程序邻接矩阵存储结点和弧等图的有关信息对用邻接矩阵表示的有向图,从某一顶点出发(称为源点)到该图其他各顶点(称为终点)有无路径?最短路径是什么?路径长为多少?问题要求写一个程序从有向网中的某一顶点出发找出该顶点到其余各顶点的最短路径。对邻接矩阵arscnn中的每一个元素只能有三种情况:当顶点i到j无边时,distancej=MAX;当顶点i到j有边且权值为edgesij时,distancej=edgesij;当顶点i到就经过t有最短路径时,distancej=distancet+edgestj;由于题目中没有规定输出格式,本程序以顶点序号的形式将最短路径输出到终端上去,并输出该最短路径的长度及路径途径。二、数据结构的选择和概要设计1)数据存储结构以邻接矩阵存储有向图,如图2中有向图G所示,其邻接矩阵为图3edges。2020500201015045103500图2.有向图图3.矩阵edges有向图的邻接矩阵arcsij定义为intedgesMAX_VERTEX_NUMMAX_VERTEX_NUM;2)概要设计对用邻接矩阵表示的有向图,从某一顶点出发(称为源点)到该图其他各顶点(称为终点)有无路径?最短路径是什么?路径长为多少?问题要求写一个程序从有向网中的某一顶点出发找出该顶点到其余各顶点的最短路径。对邻接矩阵edgesMAX_VERTEX_NUMMAX_VERTEX_NUM中的每一个元素只能有三种情况:当顶点i到j无边时,distance=MAX;当顶点iedgesMAX_VERTEX_NUMMAX_VERTEX_NUM时到j有边且权值为,distancej=edgesMAX_VERTEX_NUMMAX_VERTEX_NUM.当顶点i到就经过t有最短路径时,distancej=distancet+edgestj;建立图的表示模块,顶点的插入和删除操作模块;在建立图之后从单源点开始求最短路径,并显示出来!流程图如图4图4.程序流程图结点类型和指针类型typedefstruct/定义顶点类型.河南科技大学课程设计说明书课程名称数据结构课程设计题目哈夫曼编/译码器的设计与实现院系信息工程学院班级物联网141班学生姓名沈成龙指导教师黎蔚、刘中华日期弗洛伊德算法实验报告一、实验目的:利用图的最短路径原理为用户提供路径咨询,掌握求最短路径的算法并编程实现。二、实验要求:学习了解图的存储结构,掌握求最短路径的两种算法。1.算法设计思想:弗洛伊德算法是用邻接矩阵cost表示带权有向图。如果从顶点Vi到Vj有弧,则从到Vj存在一条长度为costij的路径,该路径不一定是最短路径,需要进行n次试探。首先考虑路径是否存在是否存在),如果存在,则比较和的路径长度,取较短者为从vi到vj的中间顶点序号不大于1的最短路径、在路径上再增加一个顶点v2,若和分别是当前找到的中间顶点序号不大于1的最短路径,则就有可能是从vi到vj的中间顶点的序号不大于2的最短路径。将他和已经得到从vi到vj中间顶点序号不大于1的最短路径比较,从中选出长度较短者作为从vi到vj中间顶点序号不大于2的最短路径之后,再增加一个顶点v3,继续进行试探,依次类推。在一般情况下,若和分别是从vi到vk和vk到vj的中间顶点序号不大于k-1的最短路径,则将和已经得到的vi到vj且中间顶点序号不大于k-1的最短路径

注意事项

本文(迪杰斯特拉算法实验报告(共9篇))为本站会员(bin****86)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.