新数据结构试题集Word文档格式.docx

上传人:b****4 文档编号:16461227 上传时间:2022-11-23 格式:DOCX 页数:27 大小:49.42KB
下载 相关 举报
新数据结构试题集Word文档格式.docx_第1页
第1页 / 共27页
新数据结构试题集Word文档格式.docx_第2页
第2页 / 共27页
新数据结构试题集Word文档格式.docx_第3页
第3页 / 共27页
新数据结构试题集Word文档格式.docx_第4页
第4页 / 共27页
新数据结构试题集Word文档格式.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

新数据结构试题集Word文档格式.docx

《新数据结构试题集Word文档格式.docx》由会员分享,可在线阅读,更多相关《新数据结构试题集Word文档格式.docx(27页珍藏版)》请在冰豆网上搜索。

新数据结构试题集Word文档格式.docx

(b)紧凑结构和非紧凑结构;

(c)线性结构和非线性结构;

(d)内部结构和外部结构;

12.若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,那么p1=n;

pi为:

(a)i;

(b)n=i;

(c)n-i+1;

(d)不确定;

13.判断一个循环队列QU(最多元素m0)为空的条件是:

(a)QU->

front==QU->

rear;

(b)QU->

front!

=QU->

(c)QU->

front==(QU->

rear+1)%m0;

(d)QU->

front!

=(QU->

14.表达式a*(b+c)-d的后缀表达式是

(a)abcd*+-;

(b)abc+*d-;

(c)abc*+d-;

(d)*-a+bc;

15.在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行:

(a)s->

next=p->

next;

p->

next=s;

(b)p->

next=s->

s->

next=p;

(c)q->

next=s;

(d)p->

next=q;

16.在一个链队中,假设f和r分别为队首和队尾指针,则插入s所指结点的运算是:

(a)f->

f=s;

(b)f->

r=s;

(c)s->

next=r;

(d)s->

next=f;

17.将递归算法转换成对应的非递归算法时,通常需要使用

(a)栈(b)队列

(c)链表(d)树

18.树最适合用来表示

(a)有序数据元素(b)无序数据元素

(c)元素之间具有分支层次关系的数据(d)元素之间相关联的数据

19.要求一个线性表既能较快地查找,又能适应动态变化的要求,则可采用的查找方法是:

(a)分块查找(b)顺序查找

(c)二分查找(d)散列查找

20.Anodeinatreethatdoesnothaveanychildreniscalled

(a)aleaf;

(b)aninternalnode;

(c)aroot;

(d)anemptynode;

21.对于一棵深度为2(仅含根结点的二叉树高度为零)的二叉树,它的总节点数:

(a)至多7个(b)至多2个(c)节点数不限(d)至多4个

22.下面的伪码是对二叉树操作算法的片段:

print(node)

{

if(thereisaleftchild)print(leftchild);

printdata;

if(thereisarightchild)print(rightchild);

}

这个算法是:

(a)折半查找;

(b)前序遍历;

(c)中序遍历;

(d)后序遍历;

23.下面哪个序列不是折半查找(二分查找)所访问的数值序列

(a)10,20,30,40,50;

(b)50,40,30,20,10;

(c)10,20,30,15,18;

(d)30,35,40,45,42

24.递归函数可以调用自身多少次?

(a)至多1次;

(b)任意次数;

(c)0次;

(d)至多2次;

25.分析下面函数:

intf(intn)

if(n==0)return0;

if((n&

1)==0)returnf(n/2);

returnf(n/2)+1;

调用函数f(10)的返回值是:

(a)1;

(b)3;

(c)5;

(d)2;

 

26.假如n,m>

=0,那么下面函数的功能是:

intff(intn,intm)

if(n==0)returnm;

returnff(n-1,m*n);

(a)计算m*(n!

);

(b)计算最大公约数;

(c)计算最小公倍数;

(d)计算(m+n)!

27.总的来说,哈希方法(hashing,也称散列方法)的主要问题在于:

(a)哈希函数难以计算;

(b)哈希表的存取速度慢;

(c)会发生冲突;

(d)哈希表占很多内存;

28.对于一个大小为m含有n项的哈希表,它的负载(load)因子是:

(a)m-n;

(b)n+m;

(c)m/n;

(d)n/m;

29.下面对p的声明,那一个是指向整数的指针:

(a)int**p;

(b)intp[];

(c)int&

p;

(d)int*p;

30.假设Thing是一个用户定义的类,B是Thing的一个实例,对于下面的代码段

ThingA=B

用到了类Thing中的哪一个成分:

(a)赋值操作符;

(b)析构函数;

(c)构造函数;

(d)复制构造函数;

31.下面对类的部分描述用于说明一种用户定义的实数实现:

classRealNumber{

...

RealNumber(floatx);

RealNumber(floatx,floaty=0);

};

这段代码可能错在哪里?

(a)在构造函数中不允许时有缺省值;

(b)没有错误;

(c)第二个构造函数与第一个不一致;

(d)用两个实数参数无法创建一个实数;

32.面向对象的程序设计最适合下面哪一种开发要求:

(a)程序是一个完整的程序模块;

(b)提供完善的代码复用;

(c)获得高效率;

(d)对封装的需求;

33.对于有n个节点e条边的图,如果用邻接表表示,则计算全部入度的时间复杂度是:

(a)O(n+e);

(b)O(n^2);

(c)O(n^3);

(d)O(n*e);

34.结定结点的关键字序列(F、B、J、G、E、A、I、D、C、H),对它按字母的字典顺序进行排列,快速排序的第一趟结果是:

(a)(C、B、D、A、F、E、I、J、G、H)(b)(C、B、D、A、E、F、I、G、J、H)

(c)(B、A、D、E、F、G、I、J、H、C)(d)(B、C、D、A、E、F、I、J、G、H)

35.计算机算法是指

(a)数值计算方法(b)对抽象数据结构的操作方法

(c)非数值计算方法(d)解决问题的有限运算序列

36、对于顺序存储的队列,存储空间大小为n,头指针为F,尾指针为R。

若在逻辑上看一个环,则队列中元素的个数为......................()

(a)R-F(b).n+R-F(c).(R-F+1)modn(d).(n+R-F)modn

37、链表不具备的特点是()。

A.可随机访问任何一个元素B.插入、删除操作不需要移动元素

C.无需事先估计存储空间大小D.所需存储空间与线性表长度成正比

38、对矩阵压缩存储的主要目的是()。

A.方便运算B.节省存储空间C.降低计算复杂度D.提高运算速度

39、判断“链式队列为空”的条件是()(front为头指针,rear为尾指针)。

A.front==NULLB.rear==NULL

C.front==rearD.front!

=rear

40、关于字符串的判定语句中正确的是()。

A.字符串是一种特殊的线性表B串的长度必须大于零

C.字符串不属于线性表的一种C空格字符组成的串就是空串

41、有100个结点的树中,其边的数目为()。

A.101B.100C.99D.98

42、在程序的执行过程中,用()结构可实现嵌套调用函数的正确返回。

A.队列B.栈C.树D.图

43、已知递归函数f(n)的功能是计算1+2+…+n,且n≥1,应采用的代码段是()。

A.ifn=lthenreturn1elsereturnn+f(n-1)B.ifn=lthenreturn1elsereturnn+f(n+1)

C.ifn=lthenreturn0elsereturnn+f(n-1)D.ifn=lthenreturn0elsereturnn+f(n+1)

44、将一个三对角矩阵A[l..100,1..100]中的元素按行存储在一维数组B[l..298]中,矩阵A中的元素A[66,65]在数组B中的下标为()。

A.195B.196C.197D.198

45、给定一个有n个元素的线性表。

若采用顺序存储结构,则在等概率前提下,向其插入一

个元素需要移动的元素个数平均为()。

A.n+lB.n/2C.(n+l)/2D.n

46、()是线性结构的数据结构。

A.广义表B.高维数组C.双端队列D.二叉树

47、结论“()”是正确的。

A.二叉树的度为2B.树中结点的度可以小于2

C.二叉树中至少有一个结点的度为2D.二叉树中任何一个结点的度都为2

48、某线性表最常用的运算是插入和删除,插入运算是指在表尾插入一个新元素。

删除运

算是指删除表头第一个元素,那么采用()存储方式最节省运算时间。

A.仅有尾指针的单向循环链表B.仅有头指针的单向循环链表

C.单向链表D.双向链表

49、表达式采用逆波兰式表示时可以不用括号,而且可以用基于

(1)的求值过程进行

计算。

与逆波兰式ab+cd+*对应的中缀表达式是

(2)。

(1)A.栈B.队列C.符号表D.散列表

(2)A.a+b+c*dB.(a+b)*c+dC.(a+b)*(c+d)D.a+b*c+d

50、设数组a[3..16,5..20]的元素以列为主序存放,每个元素占用两个存储单元,则数组

元素a[i,j](3≤i≤16,5≤j≤20)的地址计算公式为()。

A.a-118+2i+28jB.a-116+2i+28jC.a-144+2i+28jD.a-146+2i+28j

51.一个栈的输入序列为1,2,3,4,下面哪一个序列不可能是这个栈的输出序列?

()

A.1,3,2,4B.2,3,4,1C.4,3,1,2D.3,4,2,1

52.下列排序方法中,哪一种方法的比较次数与纪录的初始排列状态无关?

A.直接插入排序B.起泡排序C.快速排序D.直接选择排序

53.对n个记录的文件进行二路归并排序,总的时间代价为

A.O(nlog2n)B.O(n2)C.O(log2n)D.O(n)

54.若一棵二叉树具有10个度为2的结点,则该二叉树的度为0的结点个数是()

A.9B.11C.12D.不确定

55.下面关于B树和B+树的叙述中,不正确的是

A.B树和B+树都是平衡的多分树B.B树和B+树都是可用于文件的索引结构

C.B树和B+树都能有效地支持顺序检索D.B树和B+树都能有效地支持随机检索

56.在一棵m阶B树中,若在某结点中插入一个新关键字而引起该结点分裂,则此结点中原有的关键字的个数是。

A.mB.m1C.m—lD.m/2

57.如果具有n个顶点的图是一个环,则它有()棵生成树。

A.nB.n+lC.n-lD.2n

58.一棵前序序列为1,2,3,4的二叉树,其中序序列不可能是。

A.4,1,2,3B.4,3,2,1C.2,4,3,1D.3,4,2,1

59.具有n个顶点和e条边的图的深度优先搜索算法的时间复杂度为

A.O(n)B.O(n3)C.O(n2)D.O(n*e)

60堆排序算法在平均情况下的时间复杂度为

A.O(n)B.O(nlogn)C.O(n2)D.O(logn)

61.在待排序数据已基本有序的前提下,下述排序方法中效率最高的是

A.直接插入排序B.直接选择排序C.快速排序D.归并排序

62.在理想情况下,散列表中查找元素所需的比较次数为。

A.nB.OC.n/2D.1

63.在《数据结构》中数据项是有意义的数据的( )单位。

A.基本 B.最小 C.最大 D.特殊

64.计算机算法是指

A.数值计算方法B.对抽象数据结构的操作方法

C.非数值计算方法D.解决问题的有限运算序列

65.串的长度是()。

A.串中不同字符的个数B.串中不同字母的个数

C.串中所含字符的个数且字符个数大于0D.串中所含字符的个数

66.将递归算法转换成对应的非递归算法时,通常需要使用(   )。

A.栈B.对列 C.链表D.树

67.判断一个循环队列QU(最多元素m0)为空的条件是(   )。

A.QU->

rearB.QU->

rear

C.QU->

rear+1)%m0D.QU->

rear+1)%m0

68.将一个对称矩阵A[l..50,1..50]中的元素按行压缩存储在一维数组B中,数组B的元素总个数为()。

A.2500B.1275C.1225D.1500 

69.在具有100个结点的树中,其边的数目为(   )。

  A.101    B.100    C.99     D.98

70.在一个链队中,假设f和r分别为队首和队尾指针,则插入s所指结点的运算是:

A.f->

 B.f->

C.s->

 D.s->

71.某线性表最常用的运算是插入和删除,插入运算是指在表尾插入一个新元素。

删除运算是指删除表头第一个元素,那么采用()存储方式最节省运算时间。

A.仅有尾指针的单向循环链表B.仅有头指针的单向循环链表 

C.单向链表D.双向链表 

72.如果T2是由有序树T转换而来的二叉树,那么T中结点的前序就是T2中结点的(  )。

A.前序 B.中序  C.后序  D.层中序

73.下面关于B树和B+树的叙述中,不正确的是(   )。

A.B树和B+树都是平衡的多分树 B.B树和B+树都是可用于文件的索引结构

C.B树和B+树都能有效地支持顺序检索D.B树和B+树都能有效地支持随机检索

74.当序列中的记录基本有序或n值较小时,最佳的排序方法()。

A.交换排序B.堆排序C.插入排序D.基数排序

75.深度为5的二叉树至多有个结点(  )。

A.16  B.32  C.31  D.10

76.在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行()。

A.s->

next=s B.p->

next=p

C.q->

next=p D.p->

next=q

77.在单向链表的第i个结点前插入新结点时,需预先保留的结点指针是()。

A.指向i结点的指针        B.指向i结点的前趋结点的指针

C.指向i结点的后继结点的指针   D.无需保留

78.在《数据结构》中为了叙述的方便和避免产生混淆,通常把数据的物理结构统称为( )。

A.存储结构 B.逻辑结构 C.线性结构 D.非线性结构

79.下列属于随机存取结构的是( )。

A.线性链表 B.顺序表  C.循环链表 D.双向链表

80.下面程序段的时间复杂度为()。

for(i=0;

i<

=n;

++i)

for(j=0;

j<

=m;

++j){++x;

a[i,j]=x+j}

A.O(n2)B.O(m*n)C.O(m2)D.O(m+n)

81.判断“链式队列为空”的条件是()(front为头指针,rear为尾指针)。

  A.front==NULL 

B.rear==NULL  

C.front==rear 

D.front!

=rear

82.以下关于字符串的判定语句中正确的是()。

  A.字符串是一种特殊的线性表  

B.串的长度必须大于零

    

C.字符串不属于线性表的一种  

D.空格字符组成的串就是空串

83.由n(>

1)个结点构成的完全二叉树,其深度为()。

A.Log2n+1B.Log2n-1C.log2n+1D.Log2n-1

84.

对于一棵深度为2的二叉树,它的总结点数:

A至多7个B.至多2个C.结点数不限D.至多4个

85.有n个结点的完全二叉树,其最后一个非终端节点为()。

A.n/2B.n/2C.2nD.㏒2n

86.对于有n个结点e条边的图,如果用邻接表表示,则计算全部结点入度的时间复杂度是:

A.O(n+e)B.O(n2)C.O(n3)D.O(n*e)

87.下面哪个序列不是折半查找(二分查找)所访问的数值序列()

A.10,20,30,40,50B.50,40,30,20,10

C.13,26,30,45,68D.30,50,40,45,42

88.给定结点的关键字序列(F、B、J、G、E、A、I、D、C、H),对它按字母的字典顺序进行排列(选F为枢轴),快速排序的第一趟结果是()

A.(C、B、D、A、F、E、I、J、G、H)B.(C、B、D、A、E、F、I、G、J、H)

C.(B、A、D、E、F、G、I、J、H、C)D.(B、C、D、A、E、F、I、J、G、H)

89.总的来说,散列方法(hashing,也称哈希方法)的主要问题在于()

A.哈希函数难以计算B.哈希表的存取速度慢

C.会发生冲突D.哈希表占很多内存

90.堆是一种特殊的数据结构,下面哪一个是堆()

A.19,75,34,26,97,56B.97,26,34,75,19,56

C.19,56,26,97,34,75D.19,34,26,97,56,75

91.对矩阵压缩存储的主要目的是()。

A方便运算 B.节省存储空间 C.降低计算复杂度 D.提高运算速度

92.在长度为n(n>

0)的顺序表中插入一个元素时(假设在任何位置上插入或删除元素概率相等),平均要移动的元素个数是()。

A.nB.2n/3C.n/2D.n/3

参考答案:

CDBXDDCBDCCCAACCACDAACCD

26:

XCXDD31:

BBABD36:

dABAA41:

CBAAC

46:

CAA

(1)A

(2)CX51:

CDABC

二、填空题

1.若一个具有n个结点、k条边的非连通无向图是一个森林(n>

k),则该森林中必有(n-m)棵树。

2.含有3个2度结点和4个叶结点的二叉树可含(无穷)个1度结点。

3.含有2的n次方个结点的二叉树高度至少是(n),至多是(2n-1)(仅含根结点的二叉树高度为零)。

4.用起泡法对n个关键码排序,在最好情况下,只需做(n-1)次比较和(0)次移动;

在最坏的情况下要做(n(n-1)/2)次比较。

5.在用于表示有向图的邻接矩阵中,对第i行的元素进行累加,可得到第i个顶点的(出/入)度,而对第j列的元素进行累加,可得到第j个顶点的(入/出)度。

6.一个连通图的生成树是该图的(极小)连通子图。

若这个连通图有n个顶点,则它的生成树有(n-1)条边。

7.给定序列{100,86,48,73,35,39,42,57,66,21},按堆结构的定义,则它一定(大顶)堆。

8.在进行直接插入排序时,其数据比较次数与数据的初始排列(有)关;

而在进行直接选择排序时,其数据比较次数与数据的初始排列(无)关。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 畜牧兽医

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1