数据结构(含课程设计)·随堂练习2019春华南理工大学网络教育答案 下载本文

内容发布更新时间 : 2024/11/16 14:39:29星期一 下面是文章的全部内容请认真阅读。

A.可以随机访问任一结点 B.插入、删除不需要移动元素 C.不必事先估计存储空间 D.所需空间与其长度成正比 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 10.(单选题) 以下关于链表的叙述中,不正确的是( )。 A.结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构 B.逻辑上相邻的元素物理上不必相邻 C.可以通过计算直接确定第i个结点的存储地址 D.插入、删除运算操作方便,不必移动结点 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 11.(单选题) 要求线性表的存储空间大小固定,且插入和删除操作不需要移动元素,采用的存储结构是( )。 A.单链表 B.静态链表 C.双链表 D.顺序表 答题: A. B. C. D. (已提交) 参考答案:B 问题解析: 12.(单选题) 不带头结点的单链表head为空的判定条件是( ) A. head==NULL B. head->next==NULL C. head->next==head D. head!=NULL 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 13.(单选题) 某线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,故采用( )存储方式最节省运算时间。 A.单链表 B.仅有头结点的单循环链表 C.双链表 D.仅有尾指针的单循环链表 答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 14.(单选题) 如果含有n个元素的某表最常用的操作是取第i(2≤i≤n)个结点及其前趋结点,则采用( )存储方式最节省时间。 A.单链表 B.双链表 C.单循环链表 D.顺序表 答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 15.(单选题) 在一个长度为n(n>1)的带头结点的单链表head上,另设有尾指针r(指向尾结点),执行( )操作与链表的长度有关。 A.删除单链表中的第一个元素 B.删除单链表中的尾结点 C.在单链表的第一个元素前插入一个新结点 D.在单链表的最后一个元素后插入一个新结点 答题: A. B. C. D. (已提交) 参考答案:B 问题解析: 16.(单选题) 将长度为n的单链表链接到长度为m的单链表之后的算法的时间复杂度是( ) A. O(1) B. O(n) C. O(m) D. O(m+n) 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 17.(单选题) 已知一个长度为n的单链表中的所有结点是有序(递增)的,以下叙述中正确的是( )。 A.插入一个结点使之有序的算法的时间复杂度为O(1) B.删除最大值结点使之有序的算法的时间复杂度为O(1) C.找最小值结点的算法的时间复杂度为O(1) D.以上都不对 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 18.(单选题) 在一个双链表中,删除p结点(非尾结点)的操作是( )。 A. p->prior->next=p->next; p->next->prior=p->prior; B. p->prior=p->prior->prior; p->prior->prior=p; C. p->next->prior=p; p->next=p->next->next; D. p->next=p->prior->prior; p->prior=p->prior->prior; 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 19.(单选题) 非空循环单链表head的尾结点p满足( )。 A. p->next==NULL B. р==NULL C. p->next==head D. p== head 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 20.(单选题) 在长度为n的( )上删除第一个元素,其算法的时间复杂度为O(n)。 A.只有表头指针的不带表头结点的循环单链表 B.只有表尾指针的不带表头结点的循环单链表 C.只有表尾指针的带表头结点的循环单链表 D.只有表头指针的带表头结点的循环单链表 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 第三章 栈、队列 1.(单选题) 若元素a、 b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行,但不允许连续3次出栈,则不可能得到的出栈序列是( )。 A. dcebfa B. cbdaef C. bcaefd D. afedcb 答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 2.(单选题) 一个栈的进栈序列是a、b、c、d、e,则不可能的栈的输出序列是( )。 A. edcba B. decba C. dceab D. abcde 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 3.(单选题) 已知一个栈的进栈序列是1,2,3, …, n,其输出序列的第一个元素是i(1≤i≤n),则第j (1≤j≤n)个出栈元素是( )。 A. i B. n-i C. j-i+1 D. 不确定 答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 4.(单选题) 已知一个栈的进栈序列是1, 2, 3, ..., n,其输出序列是p1, p2, ..., pn,若p1=n,则pi的值( )。 A. i B. n-i C. n-i+1 D.不确定 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 5.(单选题) 设有5个元素,其进栈序列是a、b、c、d、e,其输出序列是c、e、d、b、a,则该栈的容量至少是( )。 A. 1 B. 2 C. 3 D.4 答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 6.(单选题) 表达式(a+a*b) *a+c* b/a的后缀表达式是( ) A. aab* +a* cb* a/+ B. aa* b+a* cb * a/+ C. aab* a*cb* +a/+ D. aab*+acb*a/+* 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 7.(单选题) 若一个栈用数组data[1..n]存储,初始栈顶指针top为n+1,则以下元素x进栈的正确操作是( )。 A. top++ ; data[top]=x; B. data[top]=x; top++ ; C. top--; data[top]=x; D. data[top]=x; top--; 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 8.(单选题) 若一个栈用数组data[1..n]存储,初始栈顶指针top为n,则以下元素x进栈的正确操作是( )。 A. top++; data[top]=x; B. data[top]=x; top++; C. top--; data[top]=x; D. data[top]=x; top―