收藏 分销(赏)

数据结构课后习题2.doc

上传人:xrp****65 文档编号:7433693 上传时间:2025-01-04 格式:DOC 页数:4 大小:81.50KB
下载 相关 举报
数据结构课后习题2.doc_第1页
第1页 / 共4页
数据结构课后习题2.doc_第2页
第2页 / 共4页
数据结构课后习题2.doc_第3页
第3页 / 共4页
数据结构课后习题2.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、2-2.若一个线性表L采用顺序存储结构存储,其中所有的元素为整数。设计一个算法,删除元素值在【x,y】之间的所有元素。要求算法的时间复杂度为O(n),空间复杂度为O(l).void Delete(squence *&L,int x,int y)int i,k=0;for(i=0;ilength;i+)if(L-datai=x & L-dataidatai-k=L-datai;L-length-=k;2-3若一个线性表L采用顺序存储结构存储,其中所有元素为整数。设计一个算法,将所有小于0的元素移到所有大于0的元素的前面,要求算法的时间复杂度为O(n),空间复杂度为O(l)。void sort(S

2、qlist *&L) int i=0,j=L-length-1,temp; while(ij) while(idataj0) j-; while(idatai0) i+; if(idatai; L-datai=L-dataj; L-dataj=temp; 2. -4.设计一个算法,将一个带头结点的数据域依次为a1,a2,an(n3)的单链表的所有结点逆置,即第一个结点的数据域变为an,最后一个结点的数据域为a1。void reverse(Sqlist *&L)Sqlist *p=L-next,*q;L-next=NULL;while(p!=NULL)q=p-next;p-next=L-next

3、;L-next=p;p=q;2-5设有一个双链表,每个结点中除有prior、data和next三个域外,还有一个访问频度域freq,在链表被起用之前,其值均初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域的值加1,并调整表中结点的次序,使其按访问频度的递减序排列,以便使频繁访问的结点总是靠近表头。试写一符合上述要求的LocateNode运算的算法。void sort(DLinkList *&L) /根据访问频度域排序DLinkList *pre,*p,*q;p=L-next-next;L-next-next=NULL;while(p!=NULL)q=p-

4、next;pre=L;while(pre-next!=NULL & pre-next-freq p-freq)pre=pre-next;p-next=pre-next;if(pre-next!=NULL)pre-next-prior=p;pre-next=p;p-prior=pre;p=q; void LocateNode(DLinkList *&h,int x) /定位元素DLinkList *q;q=h-next;while(q!=NULL)if(q-data=x)q-freq+=1;q=q-next; sort(h);运行结果:2-6设ha=(a1,a2,an)和hb=(b1,b2, ,

5、bm) 是两个带头结点的循环单链表,编写将这两个表合并为带头结点的循环单链表hc的算法。void UnionList(LinkList *a,LinkList *b,LinkList *&c) LinkList *s,*r,*pa=a-next,*pb=b-next;int i;c=(LinkList*)malloc(sizeof(LinkList);c-next=NULL;r=c; while(pa!=a )s=(LinkList*)malloc(sizeof(LinkList);s-data=pa-data;r-next=s;r=s;pa=pa-next;while(pb!=b)s=(LinkList*)malloc(sizeof(LinkList);s-data=pb-data;r-next=s;r=s;pb=pb-next;r-next=c;运行结果:

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 应用文书 > 其他

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服