


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-2.5 已知顺序线性表A和B中各存放一个英语单词,字母均为小写。试编写一个判别哪一个单词在字典中排在前面的算法。int compare (Sqlist A,Sqlist B) /返回值为-1,A中的单词在前,返回值为1,B中的单词在前。j=0; while(jA.length & jB.length) if(A.elemjB.elemj) return 1; else j+; if(A.lenghtB.length) return 1; else return -1;2.6 顺序表的就地逆置void Invert_sq(Sqlist &A) for(i=0;iA.lenght/2;i+) K=A.elemi; A.elemi=A.elemA.length-i-1; A.elemA.length-i-1=k; 2.7 ha和hb两个指针,链表长度为m,n。将他们链接到一起。 void Cat_LinkList(LinkList ha,LinkList hb,LinkList &hc) If(mnext) p=p-next; /指针p指向ha的最后一个结点 P-next=hb; /将hb连接在ha后 hc=ha;Else P=hb; While(p-next) p=p-next; /指针p指向hb的最后一个结点 P-next=ha; /将ha连接在hb后 hc=hb; /时间复杂度:O(min(m,n)2.8void Union_Link(LinkList ha,LinkList hb,LinkList & hc) Pa=ha; pb=hb; I f(!pa) hc=hb; /若ha为空链表 else If (!pb) hc=ha; /若hb为空else while(pa-next & pb) hb=hb-next; /删除hb中第一个结点,头指针hb后移 pb-next=pa-next; pa-next=pb; pa=pa-next; pa=pa-next; pb=hb; If (!pa-next) pa-next=pb; /若链表hb长度大于ha,则将hb中剩下的结点直接连接在ha后hc=ha; /新链表头指针2.9一个线表表示的线性表中有3累字符的数据元素。将他分割为3个循环链表void Seg_LinkList(LinkList &L, LinkList &La,LinkList &Lb, LinkList &Lc)/ La=(ElemType*)malloc(sizeof(Lnode);/创建头结点 Lb=(ElemType*)malloc(sizeof(Lnode); Lc=(ElemType*)malloc(sizeof(Lnode);pa=La; pb=Lb; pc=Lc; pa-next=NULL; pb-next=NULL; pc-next =NULL; P=L-next; free(L); L=p; while(p) L=L-next; /从链表中撤离第一个结点,此时头指针后移if(p-data为数字) p-next=pa-next; pa-next=p; pa=pa-next; else if(p-data为字母) p-next=pb-next; pb-next=p; pb=pb-next; else p-next=pc-next; pc-next=p; pc=pc-next; p=L; /指针p指向L的第一个结点 /构建三个循环链表pa-next=La; pb-next=Lb; pc-next=Lc;2.10以待头结点的双向循环链表表示线性表l,时间复杂度nvoid Seg2_Link(LinkList &L)/为了保证算法的时间复杂度为O(n),可从尾结点开始操作,每隔一个结点,将其前驱删除,并插入到最后。用指针p1从第n个结点开始往前移动,删除其前驱,用p2往后移动,在p2后面插入结点。/若结点为偶数个,删除的第一个结点应为第n-2个,若结点数为奇数个,删除的第一个结点为第n-1个,因此要先求结点数q=L-next; k=0; while(q-next!=L) /循环链表判断尾结点的条件 k+; q=q-next; if(k%2) p1=p2=L-prior; else p1=L-prior-prior; p2=L-prior; while(p1!=L) /p1从后往前移动,直到移动到头结点为止 q=p1-prior; q-prior-next=p1; p1-prior=q-prior; q-next=p2-next; p2-next=q;q-prior=p2; q-next-prior=q; p1=p1-prior; p2=p2-next; 2.11有序表中的元素递增排列。以单链表存储。高效算法。Mink maxkvoid delete_Link(LinkList &L,Elemtype mink,Elemtype maxk) p=L; /p指向头结点 while(p-next-datanext; q=p-next; while(q-datanext=q-next; free(q); q=p-next; 2.12 void union_Link(LinkList LA,LinkList LB,LinkList &LC) pa=LA-next; pb=LB-next; while(LA-next!=NULL &LB-next!=NULL) if(pa-datadata) LA-next=pa-next; pa-next=LC-next; LC-next=pa; else LB-next=pb-next; pb-next=LC-next; LC-next=pb; while(LA-next!=NULL) /如果LB中结点已经全部处理完,现在只需将LA中结点依次插入到LC中 LA-next=pa-next; pa-next=LC-next; LC-next=pa; while(LB-next!=NULL) /如果LA中结点已经全部处理完,现在只需将LB中结点依次插入到LC中 LBnext=pb-next; pbnext=LC-next; LC-next=pb; 2.13有两个元素递增排列的有序表a和b。构造c为交集元素。void Union_Sq(SqList LA, SqList LB, SqList &LC) i=0;j=0; k=1; LC.elem0=-9999; /LC中第一个元素空间不用,为了操作方便,可设一个顺序表中不存在的值while(iLA.length & jLB.length)if(LA.elemi=LB.ememj) /如果LA中元素较小,将其插入到LC中if(LA.elemi!=LC.elemk-1) /如果LA中当前元素与LC中K前一个元素不相等,则插入当前元素 LC.elemk+=LA.elemi+; LC.length+;else i+;else /如果LB中元素较小,将其插入到LC中if(LB.elemj!=LC.elemk-1) /如果LB中当前元素与LC中K前一个元素不相等,则插入当前元素 LC.elemk+=LB.elemj+; LC.length+;else j+;while(iLA.length) /将LA中剩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广西大新县公安局招聘警务辅助人员22人模拟试卷及答案详解(考点梳理)
- 2025金华浦江县国控集团选聘1名市场化人员模拟试卷及答案详解(有一套)
- 王全兴劳动法课件
- 安全培训考核结果通报课件
- 2025年厦门市供电服务有限公司招聘12人模拟试卷参考答案详解
- 国开2025年《社会教育及管理》形考作业1-3终考答案
- 2025广西桂林医科大学第一附属医院公开选拔超声医学科主任1人模拟试卷附答案详解(完整版)
- 2025菏泽曹县教育系统公开招聘初级岗位教师(166人)考前自测高频考点模拟试题完整参考答案详解
- 2025黑龙江富裕县富裕镇人民政府招聘公益性岗位人员10人模拟试卷及答案详解(典优)
- 洗车毛巾专业知识培训总结
- 2025年秋统编版一年级语文上册集体备课教案设计(第7单元)
- 2025年湖南大学事业编制管理辅助岗位招聘58人笔试备考试题及答案解析
- 2024新版离婚协议书模板合集
- 2026年宁波市镇海中学公开招聘事业编制教师46人笔试备考题库及答案解析
- GB 18664-2025呼吸防护装备的选择、使用和维护
- 2025年中国钛杯行业市场全景分析及前景机遇研判报告
- 室内设计方案施工流程
- 水库枢纽工程运行维护管理方案
- 中国电信集团有限公司2026年度秋季校园招聘考试参考题库及答案解析
- 信息安全全员培训课件
- 旧木房线路改造方案(3篇)
评论
0/150
提交评论