首页 数据结构期中试卷及答案

数据结构期中试卷及答案

举报
开通vip

数据结构期中试卷及答案一、选择题(每小题2分,共30分)数据结构是(D)。—种数据类型B.数据的存储结构一组性质相同的数据元素的集合相互之间存在一种或多种特定关系的数据元素的集合以下与数据的存储结构无关的术语是(D)。TOC\o"1-5"\h\z链队列B.链表C.顺序表D.栈以下数据结构中,(A)是非线性数据结构A.树B.字符串C.队D.栈一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址是(B)。A.98B.100C.102D.106在线性表的下列运算中,不改变数据元素之间结构关系的运算是(...

数据结构期中试卷及答案
一、选择题(每小题2分,共30分)数据结构是(D)。—种数据类型B.数据的存储结构一组性质相同的数据元素的集合相互之间存在一种或多种特定关系的数据元素的集合以下与数据的存储结构无关的术语是(D)。TOC\o"1-5"\h\z链队列B.链 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf C.顺序表D.栈以下数据结构中,(A)是非线性数据结构A.树B.字符串C.队D.栈一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址是(B)。A.98B.100C.102D.106在线性表的下列运算中,不改变数据元素之间结构关系的运算是(D)。A.插入B.删除C.排序D.查找线性表采用链式存储时,其地址(D)。A.必须是连续的B.一定是不连续的C.部分地址必须连续D.连续与否均可以线性表是(A)。A.一个有限序列,可以为空C.一个无限序列,可以为空一个有限序列,不可以为空D.一个无限序列,不可以为空若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为(B)。A.3,2,6,1,4,5B.3,4,2,1,6,51,2,5,3,4,6D.5,6,4,2,3,1若一个栈的输人序列是1,2,3,…,n输出序列的第一个元素是n则第k个输出元素是(C)A.kB.n-k-1C.n-k+1D.不确定对于队列操作数据的原则是(A)。D.不分顺序A.先进先出B.后进先出C.先进后出栈和队列的共同点是(C)。B.都是先进后出A.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点在一个链队列中,假定front和rear分别为头指针和尾指针,删除一个结点的操作是(A)。A.front=front->nextC.rear->next=frontrear=rear->nextfront—〉next=rear空串与空格串(B)。D.无法确定A.相同B.不相同C.可能相同串与普通的线性表相比较,它的特殊性体现在(C)。A•顺序的存储结构B•链接的存储结构数据元素是一个字符D.数据元素可以任意串的长度是指(B)。A.串中所含不同字母的个数C.串中所含不同字符的个数B.串中所含字符的个数串中所含非空格字符的个数二、填空题(每空2分,共20分)线性表、栈和队列,串都是结构。TOC\o"1-5"\h\z数据的基本单位是数据元素。当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用顺序存储结构。已知具有n个元素的一维数组采用顺序存储结构,每个元素占k个存储单元,第一个元素的地址为Loc(%),那么,第i个元素的存储地址Loc(a)=Loc(a)+(i—1)*k。i~1栈(stack)是限定在表尾进行插人或删除操作的线性表。在栈中,允许插人和删除操作的一端称为一栈顶一,而另一端称为栈底一个循环队列Q中,头指针和尾指针分别为Q.front和Q.rear,且最大队列长度为MaxQSize,则判断队空的条件为Q.rear==Q.front,判断队满的条件为(Q.rear+1)%MaxQSize==Q.front。队列的长度为(.rear—Q.front+MaxQSize)%MaxQSize两个串相等的充分必要条件是两个串的长度相等,且各个对应位置的字符都相等三、程序填空题(每空3分,共30分)在带头结点的单链表L中第i个数据元素之前插入数据元素e的C语言描述算法如下,其中L为链表头结点指针。青填充算法中标出的空白处,完成其功能。typedefstructnode{intdata;structnode*next;}linknode,*link;intListInsert_L(link&L,inti,inte){Linknode*p;intj;p=L;j=0;while(p&&ji-1)return0;s=(link)malloc(sizeof(linknode));//生成新结点ss-〉data=e;s—〉next=p—〉next;p-〉next二s;//插入L中return1;}\对顺序栈的C语言描述算法如下,其中top为栈顶指针,请填充算法中标出的空白处,插入元素e为新的栈顶元素。#defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10typedefstruct{char*base;char*top;intstacksize;}SqStack;intPush(SqStack&S,chare){//if()//栈满,追加存储空间{S.base=(SElemType*)realloc(S.base,S.stacksize+STACKINCREMENT)*sizeof(SElemType));if(!S.base)return0;S.top二s.base+s.stacksize;//修改栈顶扌旨针S.stacksize+=STACKINCREMENT;}*s.top++二e;//插入元素return1;}对链队列的C语言描述算法如下,请填充算法中标出的空白处,删除队列Q的队头元素并用e返回其值。typedefstructQNode{QElemTypedata;structQNode*next;}QNode,*QueuePtr;typedefstruct{QueuePtrfront;QueuePtrrear;}LinkQueue;intDeQueue(LinkQueue&Q,QElemType&e){Linknode*p;if(Q.front==Q.rear)retrun0;//队列空,返回p=Q.front—〉next;e=p—〉data;Q.front-〉next=p-〉next;//修改扌旨针if(Q.rear==p)Q.rear二Q.front;//队列只有一个元素的情况free(p);//释放结点空间return1;三、算法 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 与分析题(每题10分,共20分)1、简述下列算法实现的功能:(每题5分,共10分)(1)typedefstructLNode{Chardata;structLNode*next;}LNode,*LinkList;LinkListDemo(LinkList&L){//L是无头结点单链表LNode*Q,*P;if(L&&L->next){Q=L;L=L->next;P=L;while(P->next)P=P->next;P->next=Q;Q->next=NULL;}returnL;}//Demo答:将单链表的第一个结点删除,放到链尾。(2)#defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10typedefstruct{int*base;int*top;intstacksize;}Stack;voidDemo1(Stack&S,intm){StackT;inti;InitStack(T);//初始化栈while(!StackEmpty(S))//判断栈是否为空if((i=Pop(S))!=m)Push(T,i);//入栈操作while(!StackEmpty(T)){i=Pop(T);//出栈操作Push(S,i);}}答:删除栈S中所有值为m的数据元素2•有一个带头结点的单链表,头指针为head,编写一个算法计算所有数据域为X的结点的个数(不包括头结点)。typedefstructnode{intdata;structnode*next;}linknode,*link;intsample(linkhead,intX){intcount=0;linkp=head->next;while(p){if(p->data==X)count++;p=p->next;}returncount;
本文档为【数据结构期中试卷及答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
星空万里
暂无简介~
格式:doc
大小:18KB
软件:Word
页数:3
分类:
上传时间:2023-01-17
浏览量:1