国开作业《数据结构(本)-形考作业》 (29)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目:一个顺序栈一旦被声明,其占用空间的大小()。
选项A:动态变化
选项B:已固定
选项C:可以改变
选项D:不能固定
答案:已固定
题目:链栈和顺序栈相比,有一个比较明显的缺点,即()。
选项A:不会出现栈空的情况
选项B:通常不会出现栈满的情况
选项C:删除操作更加方便
选项D:插入操作更加方便
答案:通常不会出现栈满的情况
题目:用单链表表示的链式队列的队头在链表的()位置。
选项A:链尾
选项B:链中
选项C:任意位置
选项D:链头
答案:链头
题目:在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将要输出的数据依次写入缓冲区中,而打印机则从缓冲区中取出数据打印,该缓冲区应该是一个()结构。
选项A:线性表
选项B:堆栈
选项C:队列
选项D:数组
答案:队列
题目:循环队列A[m] 存放其元素,用front和rear分别表示队头及队尾,则循环队列满的条件是()。
选项A:(rear=front
选项B:(rear =front+1
选项C:(rear+1)%m-1=front
选项D:(rear+1)%m=front
答案:(rear+1)%m=front
题目:在一个栈顶指针为top的链栈中,将一个p指针所指的结点入栈,应执行()。
选项A:p-next=top-next; top-next=p;
选项B:p-next=top; top=p;
选项C:top-next=p;
选项D:p-next=top-next; top=top-next;
答案:p-next=top; top=p;
题目:在一个栈顶指针为top的链栈中删除一个结点时,用x保存被删结点的值,则执行()。
选项A:x=top;top=top-next;
选项B:x=top-data;
选项C:top=top-next; x=top-data;
选项D:x=top-data; top=top-next;
答案:x=top-data; top=top-next;
题目:在一个链队中,设front和rear分别为队首和队尾指针,则插入p所指结点时,应执行()。
选项A:p-next=front;front=p;
选项B:rear-next=p;rear=p;
选项C:p-next=rear;rear=p;
选项D:front-next=p;front=p;
答案:rear-next=p;rear=p;
题目:在链队列中,f和r分别为队头和队尾指针,要把s所指结点入队,应执行()。
选项A:r-next=s;r=s;
选项B:r-next=s;
选项C:r-next=s- next;
选项D:r-next=s- next; r=s;
答案:r-next=s;r=s;
题目:设top是一个链栈的栈顶指针,栈中每个结点由一个数据域data和指针域next组成,设用x接收栈顶元素,则取栈顶元素的操作为()。
选项A:x=top-data;top= top-next;
选项B:top-data=x;
选项C:x=top-data;
选项D:top=top-next;
答案:x=top-data;
题目:一个队列的入队序列是2,4,6,8,则队列的输出序列是()。
选项A:4,2,8,6
选项B:6,4,2,8
选项C:2,4,6,8
选项D:8,6,4,2
答案:2,4,6,8
题目:一个栈的进栈序列是5,6,7,8,则栈的不可能的出栈序列是()。
(进出栈操作可以交替进行)
选项A:8,7,6,5
选项B:5,8,6,7
选项C:7,6,5,8
选项D:7,6,8,5
答案:5,8,6,7
题目:栈的插入删除操作在()进行。
选项A:指定位置
选项B:栈底
选项C:任意位置
选项D:栈顶
答案:栈顶
题目:栈和队列的相同点是()。
选项A:都是后进先出
选项B:都是后进后出
选项C:逻辑结构与线性表相同,都是操作规则受到限制的线性表
选项D:逻辑结构与线性表不同
答案:逻辑结构与线性表相同,都是操作规则受到限制的线性表
题目:以下说法正确的是()。
选项A:栈和队列的特点都是先进后出
选项B:栈的特点是先进先出,队列的特点是先进后出
选项C:栈和队列的特点都是先进先出
选项D:栈的特点是先进后出,队列的特点是先进先出
答案:栈的特点是先进后出,队列的特点是先进先出
题目:设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针。
设p指向要入队的新结点(该结点已被赋值),则入队操作为()。
选项A:rear-next=p;p = rear;
选项B:rear=p;rear-next=p;
选项C:rear-next=p;rear=p;
选项D:p =rear-next;rear=p;
答案:rear-next=p;rear=p;
题目:设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front-next;x=p-data;然后指行()。
选项A:front-next =p;
选项B:front=p;
选项C:front-next=p-next;
选项D:front=p-next;
答案:front-next=p-next;
题目:以下说法不正确的是()。
选项A:顺序队列中,队列的头指针和尾指针均超越队列存储空间的上界,则队列已空
选项B:顺序队列中,当尾指针已经超越队列存储空间的上界,则一定是队列已满
选项C:顺序栈中,栈满时再进行进栈操作称为“上溢”
选项D:顺序栈中,栈空时再作出栈栈操作称为“下溢”
答案:顺序队列中,当尾指针已经超越队列存储空间的上界,则一定是队列已满
题目:一个递归算法必须包括()。
选项A:递归部分
选项B:终止条件和迭代部分
选项C:终止条件和递归部分
选项D:迭代部分
答案:终止条件和递归部分
题目:假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。
选项A:front=rear
选项B:front!=NULL
选项C:front=NULL
选项D:rear!=NULL
答案:front=rear
题目:向顺序栈中压入新元素时,应当()。
选项A:同时进行
选项B:应当先移动栈顶指针,再存入元素
选项C:先后次序无关紧要
选项D:先存入元素,再移动栈顶指针
答案:应当先移动栈顶指针,再存入元素
题目:判断一个循环队列Q(最多元素为m)为满的条件是()。
选项A:Q-front=Q-rear+1
选项B:Q-rear!=(Q-front+1)%m
选项C:Q-front==(Q-rear+1)%m
选项D:Q-front==Q-rear
答案:Q-front==(Q-rear+1)%m
题目:判断栈满(元素个数最多n个)的条件是()。
选项A:top=-1
选项B:top!=0
选项C:top==0
选项D:top==n-1
答案:top=-1
题目:队列的删除操作是在()。
选项A:队尾
选项B:队后
选项C:队头
答案:队前
题目:一个队列的入队序列是a,b,c,d,按该队列的可能输出序列使各元素依次入栈,该栈的可能输出序列是()。
(进栈出栈可以交替进行)。
选项A:d,b,a,c
选项B:c,a,b,d
选项C:d,a,b,c
选项D:d,c,b,a
答案:d,c,b,a
题目:线性表的顺序存储比链式存储最与利于进行()操作。
选项A:查找
选项B:表尾插入或删除
选项C:按值插入或删除
选项D:表头插入或删除
答案:表尾插入或删除
题目:链表不具备的特点是()。
选项A:可随机访问任一结点
选项B:插入、删除不需要移动元素
选项C:不必事先估计存储空间
选项D:所需空间与其长度成正比
答案:可随机访问任一结点
题目:向一个有127个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动()个元素。
选项A:8
选项B:63.5
选项C:63
选项D:7
答案:63.5
题目:在一个长度为n的顺序存储线性表中,向第i个元素(1≤i≤n)之前插入一个新元素时,需要依次后移()个元素。
选项A:n-i+1
选项B:n-i
选项C:n-i-1
选项D:i
答案:n-i+1
题目:在一个长度为n的顺序存储线性表中,删除第i个元素(1≤i≤n),需要前移()个元素。
选项A:i
选项C:n-i-1
选项D:n-i+1
答案:n-i
题目:一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址是()。
选项A:106
选项B:98
选项C:102
选项D:100
答案:100
题目:用链表表示线性表的优点是()。
选项A:花费的存储空间较顺序存储少
选项B:便于随机存取
选项C:数据元素的物理顺序和逻辑顺序相同
选项D:便于插入和删除
答案:便于插入和删除
题目:带头结点的链表为空的判断条件是()(设头指针为head)。
选项A:head-next==NULL
选项B:head-next==head
选项C:head==NULL
选项D:head!=NULL
答案:head-next==NULL
题目:非空的单向循环链表的尾结点满足()(设头指针为head,指针p指向尾结点)。
选项A:p==NULL
选项B:p-next==head
选项C:p-next==NULL
选项D:p==head
答案:p-next==head
题目:在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。
选项A:p-next=q-next
选项B:p=q-next
选项C:p-next=q
选项D:q-next=NULL
答案:p-next=q-next
题目:线性表在链式存储中各结点之间的地址()。
选项A:部分地址必须连续
选项B:必须连续
选项C:不能连续
选项D:连续与否无所谓
答案:连续与否无所谓
题目:有关线性表的正确说法是()。
选项A:每个元素都有一个直接前驱和一个直接后继
选项B:表中的元素必须按由小到大或由大到下排序
选项C:除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继
选项D:线性表至少要求一个元素
答案:除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继
题目:若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最省时间。
选项A:单向循环链表
选项B:双向循环链表
选项C:带头结点的双向循环链表
选项D:顺序表
答案:顺序表
题目:在单链表中,若*p不是尾结点,在其后插入*s结点的操作是()。
选项A:s-next=p-next;p-next=s;
选项B:s-next=p;p-next=s;
选项C:s-next=p-next;p=s;
选项D:p-next=s;s-next=p;
答案:s-next=p-next;p-next=s;
题目:在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始从后到前依次移动了15个元素。
则原顺序表的长度为()。
选项A:20
选项B:21
选项C:25
选项D:19
答案:20
题目:对于一个具有n个结点的单向链表,在给定值为x的结点之后插入一个新结点的时间复杂度为()。
选项A:O/theme/image.php/blueonionres/core/1618240267/s/no 选项B:O(1)
选项C:O(n3)
选项D:O(n2)
答案:O/theme/image.php/blueonionres/core/1618240267/s/no
题目:设顺序存储的线性表长度为n,对于插入操作,设插入位置是等概率的,则插入一个元素平均移动元素的次数为()。
选项A:n-i+1
选项B:n/2
选项C:n
选项D:n-1
答案:n/2
题目:线性表的顺序结构中,()。
选项A:数据元素是不能随机访问的
选项B:逻辑上相邻的元素在物理位置上不一定相邻
选项C:进行数据元素的插入、删除效率较高
选项D:逻辑上相邻的元素在物理位置上也相邻
答案:逻辑上相邻的元素在物理位置上也相邻
题目:以下说法中不正确的是()。
选项A:单向循环链表中尾结点的指针域中存放的是头指针
选项B:双向循环链表中每个结点需要包含两个指针域
选项C:顺序存储的线性链表是可以随机访问的
选项D:已知单向链表中任一结点的指针就能访问到链表中每个结点
答案:已知单向链表中任一结点的指针就能访问到链表中每个结点
题目:以下表中可以随机访问的是()。
选项A:单向链表
选项B:单向循环链表
选项C:顺序表
选项D:双向链表
答案:顺序表
题目:设链表中的结点是NODE类型的结构体变量,且有NODE *p;为了申请一个新结点,并由p指向该结点,可用以下语句()。
选项A:p=(*NODE)malloc(sizeof(NODE));
选项B:p=(NODE*)malloc(sizeof(NODE));
选项C:p=(NODE*)malloc(sizeof(p));
选项D:p=(NODE)malloc(sizeof(p));
答案:p=(NODE*)malloc(sizeof(NODE));
题目:设head为非空的单向循环链表头指针,p指向链表的尾结点,则满足逻辑表达式()的值为真。
选项A:p-next=NULL
选项B:p==NULL
选项C:p-next==head
选项D:p-==head
答案:p-next==head
题目:顺序存取的线性表乐意随机存取()。
选项A:对
选项B:错
答案:对
题目:由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活()。
选项A:对
选项B:错
答案:对
题目:线性表中的元素可以是各种各样的,但同一线性表中的数据元具有相同的特性,因此是属于同一数据对象()。
选项A:对
选项B:错
答案:对
题目:在线性表的顺序存储结构中,逻辑上相邻的两个元素但是在物理上位置并不一定是相邻的()。
选项A:对
选项B:错
答案:错
题目:在单链表中,任何两个元素的存储位置之间都有固定的联系,因为可以从头结点进行查找任何一个元素()。
选项A:对
选项B:错
答案:错
题目:线性表的链式存储结构优于顺序存储结构()。
选项A:对
选项B:错
答案:错
题目:在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该袁术的位置有关()。
选项A:对
选项B:错
答案:对
题目:在单链表中,要取得某个元素,只要知道该元素的指针机可,因此单链表是随机存取的存储结构。
()
选项A:对
选项B:错
答案:错
题目:顺序存储方式只能用于存储线性结构。
()
选项A:对
选项B:错
答案:错
题目:顺序存储方式的有点是存储密度大,且插入、删除运算效率高。
()选项A:对
选项B:错
答案:错。