- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构线性表综合习题剖析
数 据 结 构 计算机科学与技术学院 曲立平 Email: quliping@hrbeu.edu.cn 线性数据结构部分综合练习 若某线性表采用顺序存储结构,每个元素占四个存储单元,首地址为100,则下标为11的(第12个)元素的存储地址为( )。 线性表的链式存储结构主要包括( )、( )和( )三种形式。 线性表的顺序存储结构是通过( )来直接反映数据元素之间的逻辑关系,而链式存储结构是通过()间接反映数据元素之间的逻辑关系。 若对线性表进行的操作主要不是插入和删除,则该线性表宜采用( )存储结构;若频繁地对线性表进行插入和删除操作,则该线性表宜采用( )存储结构。 在带头结点的单链表中,设计算法dellist_maxmin删除所有数据域大于min,而小于max的所有元素。 status dellist_maxmin(linklist head,int min,int max) { linklist p,pre; pre=head; p=head-next; while(p! =NULL) if (p-data=min|| p-data=max) { pre=p; p=p-next; } else { pre-next=p-next; free(p); p=pre-next; } return OK; } 编写一个将带头结点单链表逆置的算法。 void reverse_list(linklist head) { linklist s,p; p=head-next; head-next=NULL; while(p!=NULL) { s=p; p= p-next; s-next= head-next; head-next=s; } } 编写算法swapin_list( ),实现带头结点的单链表head中,p所指向的结点和p的后继结点相互交换。 status swapin_list(linklist head, linklist p) { linklist q, r, s; q=p-next; if (q!=NULL) { r=head; while(r-next !=p) r=r-next; r-next=q; p-next=q-next; q-next=p; return(OK); } else return(ERROR); } 给定一个带表头结点的单链表head,试写出算法:按递增次序输出单链表中各结点的数据元素,并释放结点所占的存储空间。 void MiniDelete (LinkedList head) { while (head-next!=null) { pre=head; p=pre-next; while (p-next!=null) { if (p-next-datapre-next-data) pre=p; p=p-next; } printf (pre-next-data); u=pre-next;pre-next=u-next; free(u); } free(head); } 设有一线性表e=(e1,e2,…,en-1,en),其逆线性表定义为e‘=(en,en-1,…,e2,e1),请设计一个算法,将线性表置逆,要求逆线性表仍占用原线性表的空间,并且用顺序表和单链表两种方法来表示,写出不同的处理函数。 已知长度为n的线性表A采用顺序存储结构,请写一算法,找出该线性表中值最小的数据元素。 已知list是指向无头结点的线性链表的指针变量,写出删除该链表下标为i的(第i+1个)结点的算法。 请设计一个算法,求出循环链表中结点的个数。 在顺序表中插入和删除一个结点需平均移动多少个结点?具体的移动次数取决于哪两个因素? 若按从左到右的顺序依次读入已知序列{a,b,c,d,e,f,g}中的元素,然后结合栈的操作,能得到下列序列中的哪些序列(每个元素进栈一次,哪些序列可能为出栈的次序)?A.{d,e,c,f,b,g,a} B.{f,e,g,d,a,c,b}C.{e,f,d,g,b,c,a} D.{c,d,b,e,f,a,g} 编号为1,2,3,4的四辆列车,顺序开进一个栈式结构的站台,问开出车站的顺序有多少种可能?请把它们具体写出
文档评论(0)