《数据结构线性表综合习题.ppt》由会员分享,可在线阅读,更多相关《数据结构线性表综合习题.ppt(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数 据 结 构计算机科学与技术学院计算机科学与技术学院Data StructureData Structure线性数据结构部分综合练习线性数据结构部分综合练习q若某线性表采用顺序存储结构,每个元素占四个存储单若某线性表采用顺序存储结构,每个元素占四个存储单元,首地址为元,首地址为100100,则下标为,则下标为1111的的(第第1212个个)元素的存储地元素的存储地址为(址为()。)。q线性表的链式存储结构主要包括(线性表的链式存储结构主要包括()、()、()和()和()三)三种形式。种形式。q线性表的顺序存储结构是通过(线性表的顺序存储结构是通过()来直接反映数据元素)来直接反映数据元素之间
2、的逻辑关系,而链式存储结构是通过()间接反映之间的逻辑关系,而链式存储结构是通过()间接反映数据元素之间的逻辑关系。数据元素之间的逻辑关系。q若对线性表进行的操作主要不是插入和删除,则该线性若对线性表进行的操作主要不是插入和删除,则该线性表宜采用(表宜采用()存储结构;若频繁地对线性表进行插入和)存储结构;若频繁地对线性表进行插入和删除操作,则该线性表宜采用(删除操作,则该线性表宜采用()存储结构。)存储结构。4/26/20232Data StructureData Structureq设有一线性表设有一线性表e=(ee=(e1 1,e,e2 2,e,en-1n-1,e,en n),其逆线性表
3、定义为其逆线性表定义为e=e=(e(en n,e,en-1n-1,e,e2 2,e,e1 1),请设计一个算法,将线性表置逆,要请设计一个算法,将线性表置逆,要求逆线性表仍占用原线性表的空间,并且用顺序表和单链求逆线性表仍占用原线性表的空间,并且用顺序表和单链表两种方法来表示,写出不同的处理函数。表两种方法来表示,写出不同的处理函数。q已知长度为已知长度为n n的线性表的线性表A A采用顺序存储结构,请写一算法,采用顺序存储结构,请写一算法,找出该线性表中值最小的数据元素。找出该线性表中值最小的数据元素。q已知已知listlist是指向无头结点的线性链表的指针变量,写出删是指向无头结点的线性链
4、表的指针变量,写出删除该链表下标为除该链表下标为i i的的(第第i+1i+1个个)结点的算法。结点的算法。q请设计一个算法,求出循环表中结点的个数。请设计一个算法,求出循环表中结点的个数。q在顺序表中插入和删除一个结点需平均移动多少个结点?在顺序表中插入和删除一个结点需平均移动多少个结点?具体的移动次数取决于哪两个因素?具体的移动次数取决于哪两个因素?4/26/20233Data StructureData Structureq若按从左到右的顺序依次读入已知序列若按从左到右的顺序依次读入已知序列 a,b,c,d,e,f,ga,b,c,d,e,f,g中中的元素,然后结合栈的操作,能得到下列序列中
5、的哪些序的元素,然后结合栈的操作,能得到下列序列中的哪些序列(每个元素进栈一次,哪些序列可能为出栈的次序)?列(每个元素进栈一次,哪些序列可能为出栈的次序)?A.d,e,c,f,b,g,a A.d,e,c,f,b,g,a B.f,e,g,d,a,c,bB.f,e,g,d,a,c,bC.e,f,d,g,b,c,a C.e,f,d,g,b,c,a D.c,d,b,e,f,a,gD.c,d,b,e,f,a,gq编号为编号为1,2,3,41,2,3,4的四辆列车,顺序开进一个栈式结构的站台,的四辆列车,顺序开进一个栈式结构的站台,问开出车站的顺序有多少种可能?请把它们具体写出来。问开出车站的顺序有多少
6、种可能?请把它们具体写出来。q假设以循环链表表示队列,并且只设一个指针指向队尾元假设以循环链表表示队列,并且只设一个指针指向队尾元素结点(注意不设队头指针),试编写相应的置空队列、素结点(注意不设队头指针),试编写相应的置空队列、入队列和出队列的算法。入队列和出队列的算法。4/26/20234Data StructureData Structureq假设以数组假设以数组sequsequmm存放循环队列的元素,同时设变量存放循环队列的元素,同时设变量rearrear和和quelenquelen分别指示循环队列中队尾元素的位置和内含分别指示循环队列中队尾元素的位置和内含元素的个数。试给出此循环队列
7、的队满条件,并写出相应元素的个数。试给出此循环队列的队满条件,并写出相应的入队列和出队列的算法(在出队列算法中要返回队头元的入队列和出队列的算法(在出队列算法中要返回队头元素)。素)。q画出下列广义表的图形表示:画出下列广义表的图形表示:vA(a,B(b,d),C(e,B(b,d),L(f,g)A(a,B(b,d),C(e,B(b,d),L(f,g)vA(a,B(b,A)A(a,B(b,A)q设广义表设广义表L=(),()L=(),(),试问试问GetHeadGetHead(L)(L),GetTailGetTail(L)(L),Length(L)Length(L),L L的深度各为多少?的深度各为多少?4/26/20235Data StructureData Structureq求下列广义表运算的结果:求下列广义表运算的结果:v GetHeadGetHead(p,h,w)(p,h,w)vGetTailGetTail(b,k,p,h)(b,k,p,h)vGetTailGetTail(a,b),(c,d)(a,b),(c,d)vGetTailGetTail(GetHeadGetHead(a,b),(c,d)(a,b),(c,d)4/26/20236
限制150内