2024秋最新国家开放大学国开电大机考期末0数据结构(本)试卷机考期末试卷参考试题

来源:渝粤教育       时间:2025-01-11 03:36:44    16

20230506数据结构(本)试卷-14

关注公众号【飞鸟搜题】,回复【试题】获取试卷答案

文档说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。本文库还有期末考核试题、其他网核及教学考一体化、一网一平台复习试题与答案,敬请查看。

课程题目试题是随机的,请按题目关键词查找(或按Ctrl+F输入题目中的关键词,尽量不要输入整个题目,不要复制空格,连续的几个字就行)

本文由【飞鸟搜题】微信公众号提供,禁止复制盗取,违者必究

本文由【飞鸟搜题】微信公众号提供,禁止复制盗取,违者必究

本文由【飞鸟搜题】微信公众号提供,禁止复制盗取,违者必究


一 、单选题

1. 下面关于栈的基本运算算法中,复杂度最高的是()。

链栈清空运算

顺序栈判空运算

读取栈顶运算

入栈运算

答案:A
- 关注公众号【飞鸟搜题】查看答案

2. 下列是”abcd321ABCD”的子串的选项是( )。

”21ABC”

”abcABCD”

“abcD”

“321a”

答案:A
- 关注公众号【飞鸟搜题】查看答案

3. 设有一个广义表A (a),其表尾为( )。

a

(( ))

( )

(a)

答案:C
- 关注公众号【飞鸟搜题】查看答案

4. 在非空双向循环链表的*p结点之前插入*q结点的操作是( )。

p->prior=q;q->next=p;p->prior->next=q;q->prior=p->prior;

p->prior=q;p->prior->next=q;q->next=p;q->prior=p->prior;

q->next=p;q->prior=p->prior;p->prior=q;p->prior->next=q;

q->next=p;q->prior=p->prior;p->prior->next=q;p->prior=q;

答案:D
- 关注公众号【飞鸟搜题】查看答案

5. 邻接表是图的一种( )。

顺序存储结构

链式存储结构

索引存储结构

散列存储结构

答案:关注公众号【飞鸟搜题】查看答案

6. 数据的存储结构包括数据元素的表示和( )。

数据处理的方法

相关算法

数据元素的类型

数据元素间的关系的表示

答案:关注公众号【飞鸟搜题】查看答案

7. 设a,b为一棵二叉树的两个结点,在后续遍历中,a在b前的条件是( )。

a在b上方

a在b下方

a在b左方

a在b右方

答案:关注公众号【飞鸟搜题】查看答案

8. 某串的长度小于一个常数,则采用( )存储方式最节省空间。

链式

顺序

堆结构

无法确定

答案:关注公众号【飞鸟搜题】查看答案

9. 设有一个长度为n的顺序表,要删除第i个元素,则需移动元素的个数为( )。

i

n-i-1

n-i

n-i+1

答案:关注公众号【飞鸟搜题】查看答案

10. 依次将每两个相邻的有序表合并成一个有序表的排序方法称为( )。

插入排序

交换排序

选择排序

归并排序

答案:关注公众号【飞鸟搜题】查看答案

11. 在一棵度具有5层的满二叉树中结点总数为( )。

31

32

33

16

答案:关注公众号【飞鸟搜题】查看答案

12. 队列是一种操作受限的线性表,其限制是( )。

仅允许在表的一端进行插入和删除操作

仅允许进行插入操作

仅允许进行删除操作

仅允许在表的一端进行插入,而在另一端进行删除操作

答案:关注公众号【飞鸟搜题】查看答案

13. 对线性表进行二分查找时,要求线性表必须( )。

以顺序存储方式

以链接存储方式

以顺序存储方式 ,且数据元素有序

以链接存储方式,且数据元素有序

答案:关注公众号【飞鸟搜题】查看答案

14. 栈的操作特性决定了它是一种( )的线性表。

先进先出

先进后出

只进不出

只出不进

答案:关注公众号【飞鸟搜题】查看答案

15. 在一个带头结点的单向链表中,若要在指针q所指结点后插入p指针所指结点,则执行( )。

p->next=q->next; q->next=p;

q->next=p->next; p=q;

p->next=q->next; p->next=q;

q->next=p->next; p->next=q;

答案:关注公众号【飞鸟搜题】查看答案

二 、判断题

1. 二叉树中任一结点的值均大于其左孩子的值,小于其右孩子的值,则它是一棵二叉排序树。

×

答案:关注公众号【飞鸟搜题】查看答案

2. 哈夫曼树只存在着双支结点,不存在单支结点。

×

答案:关注公众号【飞鸟搜题】查看答案

3. 在线性表的顺序存储中,元素之间的逻辑关系是通过物理存储位置决定的;在线性表的链式存储中,元素之间的逻辑关系是通过链域的指针值决定的。

×

答案:关注公众号【飞鸟搜题】查看答案

4. 若让元素a,b,c依次进栈,则出栈次序c,a,b是不可能出现的情况。

×

答案:关注公众号【飞鸟搜题】查看答案

5. 在单链表中,要删除某一指定的结点,必须找到该结点的直接前驱结点。

×

答案:关注公众号【飞鸟搜题】查看答案

6. 对于一棵深度为h,度为3的树最多有(3h-1)/2个结点。

×

答案:关注公众号【飞鸟搜题】查看答案

7. 一个空格的串的长度是0。

×

答案:关注公众号【飞鸟搜题】查看答案

8. 数据项是数据的最小单位。

×

答案:关注公众号【飞鸟搜题】查看答案

9. 图的深度优先搜索序列和广度优先搜索序列不是惟一的。

×

答案:关注公众号【飞鸟搜题】查看答案

10. 冒泡排序是一种比较简单的交换排序方法。

×

答案:关注公众号【飞鸟搜题】查看答案

11. 循环队列是将队列想象成一个首尾相接的圆环。

×

答案:关注公众号【飞鸟搜题】查看答案

12. 数组通常具有的操作是顺序存取。

×

答案:关注公众号【飞鸟搜题】查看答案

13. 按照一定规则,在二叉排序树上插入、删除结点,仍能保持二叉排序树的性质。

×

答案:关注公众号【飞鸟搜题】查看答案

14. 若树中各结点的子树是按照一定的次序从左向右安排的,则称之为有序树。

×

答案:关注公众号【飞鸟搜题】查看答案

15. 图的最小生成树只有一棵。

×

答案:关注公众号【飞鸟搜题】查看答案

三 、综合题

1. 一组记录的关键字序列为(46,79,56,38,40,45,62),利用堆排序(堆顶元素是最小元素)的方法建立的初始堆为( )。

40, 38, 45, 46, 56, 79,62

38, 40, 45, 79, 46, 56,62

38, 79, 45, 46, 40, 62,56

38, 46, 45, 62,79, 40, 56

答案:关注公众号【飞鸟搜题】查看答案

2. 以下为求二叉树深度的算法,完成程序中空格部分。 int BTreeDepth(BTreeNode* BT) { if (BT==NULL) return 0; else { int dep1=BTreeDepth(BT->left); /* 计算左子树的深度 */ int dep2=BTreeDepth(BT->right); /* 计算右子树的深度 */ if (________) return dep1+1; else return dep2+!; } }

dep1>dep2

dep1<dep2

BT->left==NULL

BT->right==NULL

答案:关注公众号【飞鸟搜题】查看答案

3. 在下面空格处填写一条语句,以使下面的循环队列出队算法完整。 ElemType OutQueue(struct SeqQueue *sq) { if (sq->rear==sq->front) { printf(“队列已空,不能进行出队操作! ”); exit(1); } ________ sq->front=(sq->front+1)%MaxSize; return x; }

x=sq->data[sq->front-1];

x=sq->data[sq->front+1];

x=sq->data[sq->front];

x=sq->data[sq->rear];

答案:关注公众号【飞鸟搜题】查看答案

4. 以下函数在a[0]到a[n-1]中,用折半查找算法查找关键字等于k的记录,查找成功返回该记录的下标,失败时返回-1,完成程序中的空格选项。 typedef struct { int key; …… }NODE; int Binary_Search(NODE a[ ], int n, int k) { int low, mid, high; low=0; high=n-1; while (________) { mid=(low+high)/2) if (a[mid].key==k) return mid; else if (a[mid].key<k) low=mid+1; else high=mid-1; } return -1 }

a[mid].key==k

a[mid].key>k

a[mid].key<k

low<=high

答案:关注公众号【飞鸟搜题】查看答案

5. 在下面空格处填写一条语句,以使下面的出栈算法完整。 ElemType Pop(struct SeqStack*s,ElemType x) { if (StackEmpty(s)) { printf(“栈下溢错误! ”); exit(1); } x=s->data[s->top]; ________ return x; }

s->top--;

s->top++;

s->data--;

s->data++;

答案:关注公众号【飞鸟搜题】查看答案

关注公众号【飞鸟搜题】,回复【试题】获取试卷答案

关键词:

推荐内容

TOP