开放大学在线学习搜题
当前位置:首页 > 真题试卷

问题

数据结构智慧树网课章节测试答案

发布时间:2025-02-10   作者:形考任务   浏览:0

点击下方查看答案

第一章 章节测试

1、从一个二维数组b[m][n]中找出最大值元素的时间复杂度为

 

A:m

B:n

C:m+n

D:m*n

答案: m*n

2、在以下时间复杂度的数量级中,数量级最大的是

 

A:a.png

B:b.png

C:c .png

D:d.png

答案: c.png

3、下面程序段的时间复杂度为____________for(int i=0; i

 

A:O(m2)

B:O(n2)

C:O(m*n)

D:O(m+n)

答案: O(m*n)

4、执行下面程序段时,执行S语句的次数为(    )。for(int i=1; i<=n; i++)      for(int j=1; j<=i; j++)          S;

 

A:n2

B:n2/2

C:n(n+1)

D:n(n+1)/2

5、线性结构是数据元素之间存在一种:(    )。

 

A:一对多关系

B:多对多关系

C:多对一关系

D:一对一关系

6、数据结构中,与所使用的计算机无关的是数据的(   )结构。

 

A:存储

B:物理

C:逻辑

D:物理和存储

7、算法分析的目的是:(     )。

 

A:找出数据结构的合理性

B:研究算法中的输入和输出的关系

C:分析算法的效率以求改进

D:分析算法的易懂性和文档性

8、算法分析的两个主要方面是:(   )。

 

A:空间复杂性和时间复杂性

B:正确性和简明性

C:可读性和文档性

D:数据复杂性和程序复杂性

9、计算机算法指的是:(     )。

 

A:计算方法

B:排序方法

C:解决选择题的有限运算序列

D:调度方法

10、计算机算法必须具备输入、输出和(    )等5个特性。

 

A:可行性、可移植性和可扩充性

B:可行性、确定性和有穷性

C:确定性、有穷性和稳定性

D:易读性、稳定性和安全性

11、一个算法的好坏可以通过复杂性、可读性、健壮性、高效性这四个方面进行评价。

 

A:

B:

12、数据结构是一门研究算法的学科。

 

A:

B:

13、数据结构中,数据的逻辑结构包括线性结构、图结构、树形结构、集合。

 

A:

B:

14、线性表的逻辑顺序与存储顺序总是一致的。

 

A:

B:

15、每种数据结构都具备三个基本运算:插入、删除和查找。

 

A:

B:

16、线性结构中元素之间只存在多对多关系。

 

A:

B:

17、在线性结构中,第一个结点没有前驱结点。

 

A:

B:

18、在图形结构中,每个结点的前驱结点数和后续结点数可以任意多个。

 

A:

B:

19、算法分析的目的是分析算法的效率以求改进。

 

A:

B:

20、同一逻辑结构采用不同的存储方法,可以得到不同的存储结构。

 

A:

B:

 

第二章 章节测试

1、在n个结点的顺序表中,算法的时间复杂度是O1)的操作是:(   )

 

A:访问第i个结点(1in)和求第i个结点的直接前驱(2in

B:在第i个结点后插入一个新结点(1in

C:删除第i个结点(1in

D:n个结点从小到大排序

2、向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动(   )个元素。

 

A:8

B:63.5

C:63

D:7

3、线性表若采用链式存储结构时,要求内存中可用存储章的地址:(   )

 

A:必须是连续的

B:部分地址必须是连续的

C:一定是不连续的

D:连续或不连续都可以

4、若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用_______存储方式最节省时间。

 

A:顺序表

B:双链表

C:带头节点的双循环链表

D:单循环链表

5、在一个以h为头结点的单循环链表中,使指针p指向链尾结点的条件是(    )。

 

A:p->next == h;

B:p->next ==NULL

C:p->next->next == h

D:p->next == h->next

6、链表是一种采用(     )存储结构存储的线性表

 

A:顺序

B:链式

C:星式

D:网状

7、单链表包括两个域:(     )。

 

A:数据域和表位

B:链式和数字

C:数据域和星式

D:数据域和指针域

8、单链表可以用(     )来命名。

 

A:结点名

B:L

C:K

D:头指针的名字

9、单链表的插入操作其时间复杂度为(     )。

 

A:On

B:O1

C:On2

D:On3

10、 顺序表的插入操作的时间复杂度为(      )。

 

A:On

B:O1

C:On2

D:On3

11、线性表的逻辑结构特性是一对多的。

 

A:

B:

12、顺序表在进行插入和删除操作时不需要移动元素。

 

A:

B:

13、对于链表是依靠指针来反映其线性逻辑关系的。

 

A:

B:

14、在单链表的第一个结点之前是不允许附设结点的。

 

A:

B:

15、在单链表中首元结点就是头结点。

 

A:

B:

16、循环单链表的最大优点是从任一结点出发都可访问到链表中每一个元素。

 

A:

B:

17、线性表采用链式存储,便于插入和删除操作。

 

A:

B:

18、线性表采用顺序存储,必须占用一片连续的存储章。

 

A:

B:

19、单链表可以有多个指针域。

 

A:

B:

20、顺序表的每个元素所占的存储章是相等的。

 

A:

B:

 

第三章 章节测试

1、栈的插入和删除操作在( )

 

A:栈底

 

B:栈顶

 

C:任意位置

 

D:指定位置

 

答案:

2、五节车厢以编号abcde顺序进入铁路调度站(栈),可以得到(  )的编组

 

A:cdeab

 

B:bdace

 

C:cedba

 

D:acebd

 

答案:

3、判定一个顺序栈S(栈空间大小为n)为空的条件是( )

 

A:S->top==0

 

B:S->top!=0

 

C:S->top==n

 

D:S->top!=n

 

答案:

4、在一个链队列中,frontrear分别为头指针和尾指针,则插入一个结点s的操作为(  )

 

A:front=front->next

 

B:s->next=rear;rear=s

 

C:rear->next=s;rear=s;

 

D:s->next=front;front=s;

 

答案:

5、一个队列的入队序列是1234,则队列的出队序列是(  )

 

A:1234

 

B:4321

 

C:1432

 

D:3412

 

答案:

6、依次在初始为空的队列中插入元素a,b,c,d以后,紧接着做了两次删除操作,此时的队头元素是( )

 

A:a

B:b

C:c

D:d

答案: 【】

7、栈是一种非线性结构。

 

A:

B:

答案: 【】

8、队列允许在一端进行插入,另一端进行删除操作。

 

A:

B:

答案: 【】

9、在程序设计语言中实现递归操作是用到栈实现的。

 

A:

B:

答案: 【】

10、递归程序在执行时是用队列来保存调用过程中的参数、局部变量和返回参数的。

 

A:

B:

答案: 【】

11、在表达式求值算法中运用到队列来实现的。

 

A:

B:

答案: 【】

12、队列假溢出选择题的一个解决方法是运用循环队列。

 

A:

B:

答案: 【】

13、队列Q满的条件是:Q.front==Q.rear

 

A:

B:

答案: 【】

14、每当在新队列中插入一个新元素时,尾指针rear1

 

A:

B:

答案: 【】

15、在顺序队列中,头指针始终指向队列的最后一个元素。

 

A:

B:

答案: 【】

16、在顺序队列中,尾指针始终指向队列尾元素的下一个位置。

 

A:

B:

答案: 【】

 

第四章 章节测试

1、串的长度是指(   )

 

A:串中所含不同字母的个数

B:串中所含字符的个数

C:串中所含不同字符的个数

D:串中所含非空格字符的个数

答案: 【】

2、设有串t=I am a good student ‘,那么Substr(t,6,6)=(  )

 

A:student

B:a good s

C:good

D:a good

答案: 【】

3、串“ababaaababaa”的next数组为( )

 

A:012345678999

B:012121111212

C:011234223456

D:0123012322345

4、函数substr(DATASTRUCTURE”,59)的返回值为(    )

 

A:STRUCTURE

B:DATA

C:ASTRUCTUR

D:DATASTRUCTURE

5、设有两个串pq,求qp中首次出现的位置的运算称作(   )

 

A:连接

B:模式匹配

C:求子串

D:求串长

6、设串s1=ABCDEFG’,s2=PQRST’,函数con(x,y)返回xy串的连接串,subs(s, i, j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1, 2, len(s2)), subs(s1, len(s2), 2))的结果串是(     )

 

A:BCDEF

B:BCDEFG

C:BCPQRST

D:BCDEFEF

7

 

若串S1=ABCDEFG, S2=9898,S3=###,S4=012345,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,8),length(S2)))其结果为()  

 

A:ABC###G0123

B:ABCD###2345

C:ABC###G2345

D:ABC###G1234

 

答案:

8、主串为’abaababaddecab,模式串为’abad’。使用KMP算法需要(  )次匹配成功。

 

A:5

B:12

C:4

D:10

答案: 【 】

9、不包含任何字符的串称为空白串。

 

A:

B:

答案: 【】

10、在串的模式匹配运算中,被匹配的主串称为模式。

 

A:

B:

答案: 【】

11、组成串的数据元素只能是字符。

 

A:

B:

答案: 【】

12、串不能采用顺序存储结构进行存储。

 

A:

B:

答案: 【】

13、模式匹配简单算法时间复杂度是O(m*n)

 

A:

B:

答案: 【】

14、空格串与空串的没有区别。

 

A:

B:

答案: 【】

15、设正文串长度为n,模式串长度为m,则串匹配的KMP算法的时间复杂度为O(m+n)

 

A:

B:

答案: 【】

16、两个字符串相等的充分必要条件是两串的长度相等且两串中对应位置的字符也相等。

 

A:

B:

答案: 【】

17、串是一种非线性结构。

 

A:

B:

答案: 【】

18、串的模式匹配算法只能采用串的链式存储结构来实现。

 

A:

B:

答案: 【】

 

第五章 章节测试

1、设二维数组A[0..m-1][0..n-1]按行优先顺序存储在内存中,每个元素aijd个字节,则元素aij的地址为(  )

 

A:LOC(a00)+(i*n+j)*d

B:LOC(a00)+((i-1)*n+j-1)*d

C:LOC(a00)+((j-1)*n+i-1)*d

D:LOC(a00)+(j*n+i-1)*d

2、若数组A[0..m-1][0..n-1]按列优先顺序存储,则aij地址为()

 

A:LOC(a00)+j*m+i

B:LOC(a00)+j*n+I

C:LOC(a00)+(j-1)*n+i-1

D:LOC(a00)+(j-1)*m+I-1

3、若下三角矩阵An*n,按行顺序压缩存储在数组a[0..(n+1)n/2]中,则非零元素aij的地址为()(设每个元素占d个字节)

 

A:LOC(a00)+((j-1)j/2+i)*d

B:LOC(a00)+((i+1)i/2+j)*d

C:LOC(a00)+((i-1)i/2+i-1)*d

D:LOC(a00)+((i-1)i/2+j-1)*d

4、稀疏矩阵一般的压缩存储方法有两种,即()

 

A:二维数组和三维数组

B:三元组和散列

C:三元组和十字链表

D:散列和十字链表

5、广义表A=((x,(a,b)),((x,(a,b)),y)),则运算head(head(tail(A)))为(   )

 

A:x

B:(a,b)

C:(x,(a,b))

D:A

6、二维数组可以看成是一个线性表。

 

A:

B:

7、不做插入删除操作的数组,采用顺序存储结构表示数组比较合适。

 

A:

B:

8、二维数组的顺序存储方法只可以行序为主序的存储方式。

 

A:

B:

9、对称矩阵在存储时可进行压缩存储。

 

A:

B:

10、稀疏矩阵是非零值元素分布有一定规律的矩阵。

 

A:

B:

 

第六章 章节测试

1、一棵具有67个结点的完全二叉树,它的深度为(      )。

 

A:6

B:7

C:8

D:9

2、给定树如图所示,请列出的中序遍历序列(    ) 。blob.png

 

A:DBAECF

B:ABDCEF

C:DBEFCA

D:DABECF

3、设有树如图所示,则结点g的度为(     )。 blob.png

 

A:1

B:2

C:3

D:4

4、用4个权值{7, 2, 4, 5}构造的哈夫曼(Huffman)树的带权路径长度是(     )。

 

A:32

B:33

C:34

D:35

5、对于任何一棵具有n个结点的线索二叉树,具有(    )个线索。

 

A: 0

B: n-1

C: n

D: n+1

6、一棵深度为5的满二叉树有(     )个分支结点。

 

A:7

B:14

C:15

D:16

7、一棵深度为5的满二叉树有(    )个叶子。

 

A:32

B:31

C:17

D:16

8、给定二叉树如图所示,请列出的后序遍历序列(     ) 。blob.png

 

A:ABCDE

B:BADCE

C:BDECA

D:BACDE

9、设有二叉树如图所示,按其中序遍历次序遍历,对于根a的右子树最先访问的结点是(     )。

 

A:a

B:b

C:d

D:h

答案: h

10、若按层序对深度为6的完全二叉树中全部结点从1开始编号,则编号为10的结点其右孩子的编号为(    )。

 

A:11

B:12

C:20

D:21

11、二叉树的子树无左右之分的。

 

A:

B:

12、二叉树的度大于2的树。

 

A:

B:

13、二叉树是非线性数据结构。

 

A:

B:

14、二叉树不能转换为树,树也不能转换为二叉树。

 

A:

B:

15、哈夫曼(Huffman)树的带权路径长度是最小的。

 

A:

B:

16、满二叉树就是一种特殊的完全二叉树。

 

A:

B:

17、假设n(n>0)个结点的树,它有且只有1个根结点。

 

A:

B:

18n个结点的线索二叉树中线索的数目是不确定的。

 

A:

B:

19、不含任何结点的空树,它可以是一棵树也是一棵二叉树。

 

A:

B:

20、可以采用递归的方法计算二叉树的深度。

 

A:

B:

 

第七章 章节测试

1、无向图的邻接矩阵是一个(    )

 

A:对称矩阵

B:零矩阵

C:上三角矩阵

D:对角阵

2、若图G(V,E)中含有7个顶点,则保证图G在任何情况下都是连通的需要的边数最少是(   )

 

A:6

B:15

C:16

D:21

3、如果从无向图的任一顶点出发进行一次深度优先遍历即可访问所以顶点,则该图一定是(  )

 

A:完全图

B:连通图

C:有回路

D:一棵树

4、用Prim算法求一个连通的带权图的最小代价生成树,在算法执行的某时刻,已选取的顶点集合U={1,2,3},已选取的边的集合TE={(1,2),(2,3)},要选取下一条权值最小的边,应该从(    )组中选取。

 

A:{(1,4),(3,4),(3,5),(2,5)}

B:{(4,5),(1,3),(3,5)}

C:{(1,2),(2,3),(3,5)}

D:{(3,4),(3,5),(4,5),(1,4)}

5、已知图的顶点集合U={1,2,3,4},边的集合TE={(1,2),(1,3),(2,3), (3,4)},则从顶点1出发按深度优先遍历的结点序列是(    )。

 

A:1 4 3 2

B:2 3 1 4

C:1 4 2 3

D:1 2 3 4

6、已知图的顶点集合U={1,2,3,4},边的集合TE={(1,2),(1,3),(2,3), (3,4)},则从顶点1出发按广度优先遍历的结点序列是(     )。

 

A:1 2 4 3

B:1 3 2 4

C:1 3 4 2

D:1 4 3 2

7、任何一个无向连通图的最小生成树(     )。

 

A:只有一棵

B:一棵或多棵

C:一定有多棵

D:可能不存在

8、有8个结点的无向图最多有(    )条边。

 

A:14

B:28

C:56

D:112

9、有8个结点的无向连通图最少有(     )条边。

 

A:5

B:6

C:7

D:8

10、有8个结点的有向完全图有(    )条边。

 

A:14

B:28

C:56

D:112

11、已知无向图的顶点集合U={1,2,3,4},边的集合TE={(1,2),(1,3),(2,3), (3,4)},则顶点3的度是(     )。

 

A:1

B:2

C:3

D:0

12、已知有向图的顶点集合U={1,2,3,4},弧的集合TE={<1,2>,<1,3>,<2,3>,<3,4>},则该有向图的拓扑排序序列是(     )。

 

A:1 2 3 4

B:1 3 2 4

C:1 4 2 3

D:4 3 2 1

13、图的深度优先遍历序列(  )。

 

A:不存在

B:可以有多个

C:只有一个

D:

14、拓扑排序算法是通过重复选择具有(    )个前驱顶点的过程来完成的。

 

A:1

B:2

C:3

D:0

15n个顶点e条边的图采用邻接表存储,该算法的时间复杂度为(     )。

 

A:O(n2)

B:O(n+e)

C:O(n)

D:O(e)

16n个顶点e条边的图采用邻接矩阵存储,该算法的时间复杂度为(    )。

 

A:O(n2)

B:O(n+e)

C:O(n)

D:O(e)

 

第八章 章节测试

1、在表长为n的链表中进行线性查找,它的平均查找长度为(      )。

 

A:ASL=n

B:ASL=(n+1)/2

C:image.png

D:ASL≈log2(n+1)-1

2、有一个有序表(139123241456275778295100),当折半查找有序表中值为82的结点时,则它与表元素中比较了(    )次后查找成功。

 

A:1

B:2

C:4

D:8

3、采用折半查找方法查找长度为n的 线性表时,每个元素的平均查找长度为(    )。

 

A:O(n2)

B:O(nlog2n)

C:O(n)

D:O(log2n)

4、链表适用于以下(     )查找

 

A:顺序

B:二分法

C:顺序,也能二分法

D:随机

5、 顺序表查找法适合于以下(     )存储结构的线性表。

 

A:散列存储

B:顺序存储或链接存储

C:压缩存储

D:索引存储

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

 

A:以顺序方式存储

B:以链接方式存储

C:以顺序方式存储,且结点按关键字有序排序

D:以链接方式存储,且结点按关键字有序排序

7、有一个长度为12的有序表,按二分查找对该表进行查找,在表内各元素等概率情况下查找成功所需的平均比较次数为(    )。

 

A:35/12

B:37/12

C:39/12

D:43/12

8、碰撞(冲突)指的是(     )。

 

A:两个元素具有相同序号

B:两个元素的关键码值不同,而非码属性相同

C:不同关键码值对应到相同的存储地址

D:负载因子过大

9、在各种查找方法中,平均查找长度与结点个数n无关的查找方法是(     )。

 

A:顺序查找

B:折半查找

C:散列查找

D:分块查找

10、散列法存储的基本思想是(     )。

 

A:顺序查找

B:以顺序方式且结点按关键字有序排序

C:查找与结点个数n无关

D:由关键字的值决定数据的存储地址

11、在散列函数H(key)=key%pp应取(     )。

 

A:整数

B:偶数

C:素数

D:小数

12、采用分块查找时,若线性表中共有625个元素,查找每个元素的概率相同,假设采用顺序查找来确定结点所在的块时,每块应分(     )个结点最佳。

 

A:10

B:25

C:6

D:625

13、平衡二叉树上的平衡因子只能取(     )。

 

A:-1

B:0

C:1

D:-1,0,1

14、以下对二叉排序树的描述不正确的是(    )。

 

A:二叉排序树左子树上所有结点的值均小于它的根结点的值

B:二叉排序树右子树上所有结点的值均大于它的根结点的值

C:左、右子树也分别是二叉排序树

D:中序遍历一棵二叉树时可以得到一个结点值递减的序列

15、 假设在平衡二叉树上插入一个结点后造成了不平衡,其最近不平衡点为A,且已知A的左子树的平衡因子为-1,其右子树的平衡因子为0,应该进行(    )型调整可使二叉树平衡。

 

A:LL

B:RR

C:LR

D:RL

答案: 【】

 

第九章 章节测试

1、从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,这种排序方法称为(   )。

 

A:归并排序

B:冒泡排序

C:插入排序

D:选择排序

2、从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为(   )。

 

A:归并排序

B:冒泡排序

C:插入排序

D:选择排序

3、对n个关键字作快速排序,在最坏情况下,算法的时间复杂度是(   )。

 

A:O(n)

B:O(n2)

C:O(nlog2n)

D:O(n3)

4、下列关键字序列中,(   )是堆。

 

A:167231239453

B:942331721653

C:165323943172

D:162353319472

5、下述几种排序方法中,(   )是稳定的排序方法。

 

A:希尔排序

B:快速排序

C:归并排序

D:堆排序

6、在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是(    )。

 

A:希尔排序

B:起泡排序

C:插入排序

D:选择排序

7、在待排序的元素序列基本有序的前提下,效率最高的排序方法是(     )。

 

A:插入排序

B:选择排序

C:快速排序

D:归并排序

8、在对一组记录(543896231572604583)进行直接插入排序时,当把第7个记录60插入到有序表时,为寻找插入位置至少需比较(    )次。

 

A:3

B:4

C:5

D:6

9、大多数排序算法都有两个基本的操作:(    )和(    )。

 

A:插入和比较

B:比较和移动

C:插入和删除

D:移动和删除

10、对n个不同的排序码进行冒泡排序,在元素无序的情况下比较的次数为(    )。

 

A:n+1

B: n

C:n-1

D:n(n-1)/2

11、下列关于堆的描述不正确的是(    )。

 

A:堆的形状是一棵完全二叉树

B:堆是利用完全二叉树中双亲结点和孩子结点之间的内在关系,在当前无序的序列中选择关键字最大的或最小的记录

C:堆是一种插入排序

D:堆是一种选择排序

12、若对n个记录的集合进行冒泡排序,在最坏的情况下所需要的时间是(    )。

 

A:O(n)

B:O(n2)

C:O(nlog2n)

D:O(n3)

13、假设要将序列(Q, H, C, Y, P, A, M, S, R, D, F, X)中的关键码按字母序的升序重新排列,则初始步长为4的希尔(shell)排序一趟的结果是(     )。

 

A:H C Q P A M S R D F X Y

B:P A C S Q H F X R D M Y

C:F H C D P A M Q R S Y X

D:A D C R F Q M S Y P H X

14、用某种排序方法对线性表(25, 84, 21, 47, 15, 27, 68, 35, 20)进行排列时,元素序列的变化情况如下:(1) 25, 84, 21, 47, 15, 27, 68, 35, 20(2) 20, 15, 21,25, 47, 27, 68, 35, 84(3) 15, 20, 21, 25, 35, 27, 47, 68,84(4) 15, 20, 21, 25, 27, 35, 47, 68, 84则所有的排序方法是(     )。

 

A:插入排序

B:选择排序

C:快速排序

D:归并排序

15、有一组记录的排序码为(25, 48, 16, 35, 79, 82, 23, 40, 36, 72),其中含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并的结果是(     )。

 

A:16 25 35 48 23 40 79 82 36 72

B:16 25 35 48 79 82 23 36 40 72

C:16 25 48 35 79 82 23 36 40 72

D:16 25 35 48 79 23 36 40 72 82

您可能感兴趣的试题