欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计之全国铁路最佳路径问题文档格式.docx

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

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构课程设计之全国铁路最佳路径问题文档格式.docx

    1、1.设计思路:核心问题: 求最短路径(选址的要求就是超市到各单位权值之和最少)数据模型(逻辑结构): 带权有向图 (权值计算: 距离*频度)2.数据结构设计:存储结构: 本程序采用的是文件进行数据的存储,所以才用的是顺序存储结构,如要添加数据,直接在文件里面进行操作就行。如下为抽象数据类型定义的模板及抽象数据类型线性表的定义如下:ADT List数据对象:D=ai| ai ElemSet,i=1,2,3,n,n0数据关系:R1=| ai-1,ai D,i=1,2,3,,n基本操作:void readviews()初始条件:views.txt已经存在。操作结果:将 views.txt里面的数据一

    2、次存入数组viewsSIZE_view里,并将数组里的存储数据的个数赋值给全局变量view_count;void readways()ways.txt已经存在。将 ways.txt里面的数据一次存入数组waysSIZE_view里,并将数组里的存储数据的个数赋值给全局变量way_count;void readlines()lines.txt已经存在。将 lines.txt里面的数据一次存入数组linesSIZE_view里,并将数组里的存储数据的个数赋值给全局变量line_count.void search();viewsSIZE_view存在,且里面放有相关的数据。根据用户输入的车站名查找该

    3、车站的相关信息并输出;void addview();void addway();void addline();void floyed();viewsSIZE_view、waysSIZE_view、linesSIZE_view存在并且存有相关的信息把每个车站到人一个车的最短经由路径及此路径的距离存储在path_info path_listSIZE_viewSIZE_view数组里;void shortest_path()path_info path_listSIZE_viewSIZE_view存在且存储相关的数据;输出输入的两个站的最短距离及经过的所有站;void adddata(int men

    4、u)views.txt、ways.txt、lines.txt已经存在。如果menu=1,则添加车站数据,如果menu=2,则添加路线数据;3.软件结构设计:三、 详细设计 1.定义程序中所有用到的数据及其数据结构,及其基本操作的实现;struct view_info /*车站信息结构*/ int id; /车站的id编号 char name20; /车站的名字 int code; /车站的编码 char shortname20; /车站的简称 char LName100;/经过此站的铁路线名称viewsSIZE_view;struct line_info/铁路线信息结构 int Lid; /铁

    5、路线的id编号 char LName20; /铁路线的名字 int start_id; /铁路线的始发站 int end_id; /铁路线的终点站 int dist; /铁路线长 char sign5; /铁路线的通行标志 linesSIZE_line;struct way_info /铁路线上站与站之间的信息结构 int station1; /前一个站 int station2; /后一个站 /前后站之间的距离waysSIZE_way;struct path_info /用于最短路径的查询 int count; /用于存最短路径的站的个数 int pathSIZE_view;2.主函数和其他

    6、函数的代码算法;(1)void main() readviews(); /* coutendlendl;*/ readlines(); readways(); while(1) int menu; coutmenu; while(menu5) cout switch(menu) case 1: case 2: adddata(menu); break; case 3: while(1) search(); coutcon; if(con=y); else break; case 4: short_path(); /* addline(); case 5:谢谢使用,再会! exit(1); (2

    7、) int i; ifstream infile(views.txt,ios:in); /打开文件 if(!infile) /打开文件失败 cerrviewsi.idviewsi.nameviewsi.codeviewsi.shortnameviewsi.LName; if(i!=0&viewsi.id=0)break; view_count=i; infile.close(); /下面是测试用的代码setiosflags(ios:left);setw(8)idsetw(9)namecodesetw(12)shortnamesetw(10)LName for(i=0;iview_count;v

    8、iewsi.idviewsi.nameviewsi.codesetw(12);viewsi.shortnameviewsi.LNamewaysi.station2waysi.dist;waysi.station1=0)break; way_count=i; /测试用,输入路段的信息/ coutstation1station2dist/ for(i=0;way_count;/ / coutwaysi.station1waysi.station2;waysi.distlinesi.LNamelinesi.start_id;linesi.end_idlinesi.distlinesi.sign;li

    9、nesi.Lid=0)break; line_count=i; /下面的代码为测试时用的 coutLidstart_idend_idsignline_count;linesi.Lidlinesi.LNamelinesi.end_idlinesi.distlinesi.signsta_name; /输入要查询的名字 int i,mark; if(strcmp(sta_name,viewsi.name)=0)the station informations is:n mark=i; if(mark=view_count-1) /若没找到,输出提示sorry, the station is not

    10、in here!(6)void addview()Please enter the new views informations: /输入新的车站信息id(idviewsview_count-1.id):viewsview_count.id; if(viewsview_count.idviewsview_count-1.codeviewsview_count.code; if(viewsview_count.codeviewsview_count-1.code) else break;shortname:viewsview_count.shortname;LName:viewsview_cou

    11、nt.LName; ofstream outfile(app); /打开views文件,并写入数据outfile) outfileviewsview_count.id viewsview_count.nameviewsview_count.codeviewsview_count.LName /在文件末尾添加 view_count+; outfile.close(); /关闭文件Successfully!the new station is addednew station number is :view_count(7)void addway()Please enter the new way

    12、station1:waysway_count.station1; /station1 的idstation2:waysway_count.station2; /station2 的iddist:waysway_count.dist; /路段的长度 /打开ways.txt文件,并写入数据/* outfileway_countwaysway_count.station1waysway_count.station2waysway_count.distlinesline_count-1.Lidlinesline_count.Lid; if(linesline_count.Lidlinesline_count-1.Lid)linesline_count.LName;start_id:linesline_count.start_id;end_id:linesline_count.end_id;linesline_count.dist;sign:linesline_count.sign; /打开文件,并写入数据line_count+1linesline_count.Lidlinesline_count.LNamelinesline_count.end_idlinesline_count.dist line_count+;the new line is added


    注意事项

    本文(数据结构课程设计之全国铁路最佳路径问题文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开