ImageVerifierCode 换一换
格式:DOC , 页数:24 ,大小:185KB ,
资源ID:4356882      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4356882.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(数据结构课程设计航班信息的查询与检索.doc)为本站上传会员【快乐****生活】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

数据结构课程设计航班信息的查询与检索.doc

1、目录第章 概述2第2章 设计要求与分析2、1设计要求22、2设计分析3、2、1定义数据类型32、2、2实现排序得个函数说明4第3章算法实现43、1 一趟分配算法43、一趟收集算法53、3 链式基数排序算法5、4 二分查找得函数定义6第章 程序代码7第5章 运行与测试7第6章 实验反思10参考文献1第1章 概述排序与查找就是在数据信息处理中使用频度极高得操作.为了加快查找得速度,需要先对数据记录按关键字排序。当今乘飞机旅行得人越来越多,人们需要关心了解各类航班得班次、时间、价格及机型等信息。在这个飞机航班数据得信息模型中,航班号就是关键字,而且就是具有结构特点得一类关键字。因为航班号就是字母数字

2、混变得,例如CZ369,这种记录集合就是一个适合与多关键字排序得例子。第章 设计要求与分析2、1设计要求该设计要求对飞机航班信息进行排序与查找、可按航班得航班号、起点站、到达站、起飞时间以及到达时间等信息进行查询。对于本设计,可采用基数排序法对一组具有结构特点得飞机航班号进行排序,利用二分查找法对排好序得航班记录按航班号实现快速查找,按其她词关键字得查找可采用最简单得顺序查找方法进行,因为她们用得较少.每个航班记录包括八项,分别就是:航班号、起点站、终点站、班期、起飞时间、到达时间、飞机型号以及票价等,假设航班信息表如下表所示:航班信息表航班号起点站终点站班期起飞时间到达时间机型票价C15合肥

3、北京12.4、5160341上海广州每日120161M901280CZ69重庆深圳.4。61010MU682桂林南京2.4、6、2502215M90130HU18上海北京每日125052成都厦门。3.、7501650CR1060U4昆明西安.3.5、610C7425青岛海口1.6122120H41630其中航班号一项得格式为: k0 k1 k3 k5 k6C Z 其中k0与k1得输入值就是航空公司得别称,用两个大写字母表示,后4位为航班表号,这种航班号关键字可分成两段,即字母与数字。其余七项输入内容因为不涉及本设计得核心,因此除了票价为数值型外,均定义为字符串型即可。2、2设计分析2。2.定义

4、数据类型根据设计要求,我们知道设计中所用到得数据记录只有航班信息,因此要定义行管得数据类型:Typdef stuc Car stat7; Car end7;Chrsche1;Chartime5;Chr tme25;C oe4;Int prc;InfTpe;Tedeftruct Keyype kyskeyle;InfoType ohers;In nex;LNde;ypdef srut SLNoe s1MaxSace; Int le; Int engt;SLList;为了进行基数排列,需要定义在分配与手机操作使用到得指针数组:ypee n ArType_n10;Tyedef itrryp_、26;

5、2.2。2实现排序得个函数说明(1)一趟分配函数:od Ditribu(SLNode s1,it I,Arye ,ArType e);/本算法就是按关键字eysi建立RAIX个子集,就是同一个子集中记录得kesi相同,/0、RADIX与e0、RADIX分别指向各自表中得第一个与最后一个记录(2)一趟搜集函数:Void Collt(LNde s1,in i,rrTye ,ArTyp );/本算法就是按关键字kys从小到大将0、RAIX所指得各子表一次连接成一个链表(3)链式基数排序函数:VoidRdxSr(SLit L);/本算法就是按关键字从低位到高位依次对各关键字进行分配与收集,分两端实现(

6、4)二分查找函数:Int BinSerach(SLList L,KeyTypkey);/L为待查找得表,key为待查找得关键字,按二分查找得思想实现查找()主控函数:oi main() 初始化; 数据输入; 排序处理; 接受查找要求及查找关键字; 查找处理; 输出查找结果;第3章 算法实现、1 一趟分配算法Void Dsrite(oe *1,I,rrypef,rrTy e)Inj,p;For(j=;RADIX;j+)/分子表初始化为空表 Fj; Ej=;Fo(=s0、net;p;p=s1p、next) J=1、esi48;If(!fj) Fjp;Else 1j、e=p;Ejp;3、2一趟收集算

7、法oid olet(Lod s1,in I,ARyp f,rTypee)Int j,t;For(j=0;!;j+);1、next=;t=ej;Whle(jRSDI-) or(j=j+1;jADX-1&!fj;j+); If(fj)st、et=fj;t=ej;t、ex=0;/主函数程序inudestdio、hncludestig、h#defin Maxpc 100fieeylen 6dfinRAIX_10defn R_c 26#defie SHOW_MS_ERO”n错误信息:航班号须由2位大写字母与4位数字组成。n输入数据错误,程序终止执行!nypedef ch eyType;typedef s

8、tructchar tart6;car end6;har sche;cha16;catie6;harmodl;nt pre;fTpe;tyede struct eype keskeyle;InfoTypeothers;int next;SLNo;typede tutSL MaxSac;in eynum;in length;SLList;typeef int rrTpeRAIn; typedint ArTye_cRAIc;KeTy kekeylen,kl4;voidDstriue(SLodel, int,Arrype_n f, ATen&e);voollec(Nodes, int i, rpen

9、 f, ArrTye e);voi Diribut_c(LNoe sl, int i, ArType_cf, re_c e);vod Collectc(SNd *sl, nt i, ArrTpe_c f, ArTyp_c );oi RdiSrt(Sst &);void Arrage(SLis L);int nSearch(SLi L, KeTe key);vodSeSearch(LLs L, KyType ey,i i);voi isayStyle(int, cha );vidDspay(SList L,nti);voidsearchon(SLList );vo Promp( );ool Ip

10、utData(SList &L);bol heckHngBna(har agBanHo);oid Distribute(SLNde*sl, nt i, Arryp_n &f,ArTyp_n e)nt j,p; or(j=;ADI_n;+);for(p=sl、ext; p; p=sp、et)sl、ei48; if(!f)fj=p;lsesle、next=p;j=p;vid Colc(SLNo*s, ArrTye_n f, ArrTypen e) i j,t; for(j;!;j+);、ext=;t=e;whil(RADIX_1)for(j=j+1;RADI_n1 &!fj;j+);if(fj)l

11、、nextfj;tj;slt、nx=0;vid stribute_(SLNode l, in i, Arrype_c&f, ArType_c )int j,p;or(j=0;jDX;j+)fj0;fo(=sl0、nex;p!=0;=l、next)j=slp、key%6;if(!fj)=p;elsele、netp;ejp;vid Colect_c(LNd sl, Arrype_c f, ArrTe_c ) int ,;fr(j=0;!j; +);sl0、nex=fj;t=ej;wile(jRADI_c1)for(j=j+;RAIX_c1& !j;+);if() lt、ext=fj;t=ej;sl

12、t、net=0;voi RdixSor(SLLit L) int i; Arrpe_ fn,en; rrTe_fc,c; for(i0; i=;i)Distribue(L、s,f,n);Clct(L、sl,fn,n);for(i=;i=0;i-)isrutc(L、s,,c);Cllect_(、s,fc,e);void Arag(SLList ) i,q,i; SLetemp;p、sl0、nx;for(i;L、lenth;i+)whe(pi)pL、sl、et;q=L、sl、next;if(p!i)em=L、slp;L、lp=L、i;L、li=te;L、sli、extp;pq;n inearch(

13、SLst L, KeyTye key) int lw,hig,m; low=1; h=L、lengh;hil(ow=high) i=(low+high)/2;i(srcm(e,L、lmid、key)=0) reurn id;else if(rmp(e,L、sld、keys)Z| angBno1A HnHaoZ)retun flse;for(int =2;i9)returnfals;retur true;in man()SList L;L、kynum=6;L、lngth;Prompt( );if(!Inptata(L)printf(SHWG_ROR);return 1;seacon(L);reu

14、rn0;3、3 链式基数排序算法Void RaixSor(SLis &L)ArrTypen f,en;rrTycf,en;For(=;=0;i) Distribte(、s,fc,ec);Colletc(L、s,i,f,ec);/RaxSr/按指针链整理链表oid Arang(SLLis&) p=L、s1、next;For(i=1;iL、length;+) While()pL、sp、next; /找到第i个记录,并用p指示其在L中得当前位置 =、s1p、nxt; If(!=) Temp=L、s1p;L、1p=L、s;L、1=tep; L、s1i、nx=p; P=q; /rage3、4二分查找得函

15、数定义IntBinSearch(Sst ,Keysype ey) While(lw=high) Mid(ow+gh)/2; f(srcm(ky,L、s1m、eys)=) Rurn d; Elselo=i+;etur;/BiSearch第4章 程序代码incluestdi、hclud/* 宏定义 */#define MaxSpace 10defe keylefine RADIX 0define RADIX_c 26eine SOW_M_ERRO n错误信息:航班号须由2位大写字母与4位数字组成。n输入数据错误,程序终止执行!typdf chr KyTpe;/ 航班记录数据结构描述 /tpeest

16、ruc charsta6; /起点char nd6; /终点char sche6; /班期char me16; /起飞时间caime6; /到达时间chamdel3; /机型int rice; /票价nfTyp;/静态链表结点类型 */tyf uct KeTy keyskeyle; /关键字(航班号)IoTyp ohers;int nex;LNode; 静态链表类型 */typedef rt SLNo laxpae; /静态链表int eynm; /关键字字符数int egth; /表长SLList;teef int Arryp_nRADIXn; /数字字符typeef i Arrype_AD

17、IX_c; /字母字符KeyTypekeyln,kl4;/ 功能函数声明*/vd istibute(SLe *s, i i, ATypn&f, rrp_n );i ollet(LNode *l,nt i,ArrTye_nf, ArT_ne);id Distribue_c(SLode sl, int i, ArTypec &f,ArType_c &);void ollect_c(SLode *s, in , ArTye f,Arype_c);oid adxSr(SList );vid rrange(SLList &L);intBerc(LList L, eyTe ky);voi qSearch(

18、SLit L,KeyTyp ke,int i);vd Dplayy(n i, chr *s);vidDisplay(SLList L, in);void eron(SLLi L);void Propt( );ool InutDta(Sit );bolCheckangBanao(char *ngBanHa);/ 1、 数字字符分配函数 */v Dsrbute(SLNode sl, in , ArTen f, ArrTye_n e)int j,; fr(0;RADIX_;j)fj=0;r(p=sl0、ex; p;p=slp、next)j=sp、eysi4; /将数字字符映射为十进制数字if(!fj

19、)fj=p;lse /将p指向得结点插入到第j个子表中slej、next=p;ej=p;/2、 数字字符收集函数 *vid Cllect(SLNode sl, rTye_nf, rType_n ) in j,t; or(=0;!fj;+); /找第一个非空子表sl、nex=; /将sl0、et指向第一个非空子表得第一个结点=e;hle(jADI_-1)for(j=j1;jAX_-1 & !j;j+); /找下一个非空子表if(fj)lt、nxtfj;t=ej; 链接到主链表lt、nxt=0;/ 3、 字母字符分配函数 /vod isribut_c(SLNode s, int ,ArrTp_c

20、f, ArrType_e) itj,p;fr(j=0;RADIX;j)=0;fo(p=sl0、ne;p!=0; p=p、nt)=sp、esi%6; /将字母字符映射为字母集中得相应序号if(!fj)j=p;ele /将指向得结点插入到第个子表中le、next=p;ej=p;/* 4、 字母字符收集函数 /void Colec(SLNode *s,rrType_ f, rTyp_c) nj,t;fo(j=0;!fj;+); /找第一个非空子表sl0、next=j;=ej; /将sl、nxt指向第一个非空子表得第一个结点whil(j=0;i) /对高位得2位字母进行分配与收集iibutec(L、sl,i,f,c);Collect_c(L、l,c,ec); 、 按指针链整理线性表 */void rrnge(LLst &L) nt ,i; SLN tmp;p=、sl0、nxt; /p指向第一个结点for(i=1;iL、length;+)wile(p) /查找第个结点,并用p指向此结点p=L、slp、nx;q=L、slp、net;if(p!i) /若第i个结点不在当前位置,交换结点数据tempL、slp;、slp=L、li;L、slemp;L、si、nextp;p=q; /p指向下一个未调整结点/*

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服