数据结构考研模拟题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模拟试题一

一.单项选择题

1. 设有一个二维数组A[m][ n]在存储中按行优先存放,假设A[0][0] 存放位置在78010),

A[4][6]存放位置在1146(10),每个元素占一个空间,则A[6][20] 在( )位置,(10)表明用10进制数表示。 A. 692(10)

B. 780(10)

C. 1146(10)

D. 1340(10)

2. 设有一个顺序存储的栈S ,让元素序列1, 2, 3, ..., n 依次进栈和出栈,得到的出栈序列为

p 1, p 2, p 3, ..., p n 。若p 3 = 1,则p 1是( )。 A. 2

B. 3

C. 4

D. 5

3. 设有一个双端队列DQ ,若让元素序列1, 2, 3, …, n 顺序全进队然后再出队,则可能的

出队序列有( )种。 A. n

B. n(n -1)/2

C.

D. n!

4. 假定一组元素序列为{38, 42, 55, 15, 23, 44, 30, 74, 48, 26},按次序插入每个元素生成一

棵平衡二叉树,那么最后得到的平衡二叉树中度为2的结点个数为( )。 A. 1

B. 3

C. 4

D. 5

5. 以下关于二叉树的说法中错误的是( )。

A. 在二叉树的后序序列中最后一个结点一定是二叉树的根结点。

B. 在二叉树的中序序列中最后一个结点一定是二叉树的一个叶结点。

C. 在二叉树的前序序列中最后一个结点一定是二叉树的一个叶结点。

D. 在二叉树的层次序序列中最后一个结点一定是二叉树的一个叶结点。 6. 下列关于后缀表达式的比较中,结果为“假”的是( )。

① xy+z+ == xyz++ ② xy+z - == xyz -+ ③ xy -z+ == xyz+-

④ xy -z - == xyz -- A. ①

B. ①②

C. ③④

D. ②④

7. 设图G = (V, E),其中 V={V 0,V 1,V 2,V 3}

E ={(V 0,V 1), (V 0,V 2), (V 0,V 3), (V 1,V 3)}

则从顶点V 0开始对图G 的深度优先遍历序列总共有( )种。

A. 3

B. 4

C. 5

D. 2

8. 一棵度为3高度为4的满4叉树中路径长度为( )。

A. 32

B. 40

C. 102

D. 176

9. 设有一个含有200个元素的散列表,用二次探测法解决冲突,要求按关键字查询寻找一

个不在表中的元素但找到它插入位置的平均探测次数不能超过2.5,则散列表的长度应

C n

n

n 121

至少为()。(注:用二次探测法解决冲突时,平均探测次数的计算公式为S n= (1/α)log e(1/(1-α)), U n = 1/(1-α), 其中α为装填因子)

A. 333

B. 400

C. 401

D. 409

10.设待排序元素序列所有元素的排序码都相等,则下列排序方法中排序速度最慢的是

()

A. 直接插入排序

B. 起泡排序

C. 简单选择排序

D. 基数排序

二、综合应用题

41.下图是一棵5阶B树,试画出插入67后的5阶B树。

试再画出在插入后的5阶B树中删除51后的5阶B树。

42.已知一个带表头结点的自组织单链表的结点类型LinkNode定义为:

struct LinkNode { int data; int freq; struct LinkNode *link; };

其中data为结点值域,freq为该结点元素的访问计数,初始为0;link为指向链表中该结点后继结点的指针域,设该链表所有结点按照freq值从大到小链接。试编写一个查找函数Search,从链表首元结点开始查找结点data值与给定值相等的结点。如果找到,则将该结点的freq值加1,然后把它前移到与结点freq值相等的结点的后面,使得所有结点仍然都保持按照freq值从大到小链接。

模拟试题二

一、单项选择题

1.在顺序表的动态存储定义中不包含的数据成员是()。

A. 数组指针*data

B. 表中元素个数n

C. 表的大小maxSize

D. 数组基址base

2.在以下关于单链表的说法中错误的是()。

A. 在单链表中可以通过链指针p++定位于逻辑上的下一个结点。

B. 在单链表中结点的逻辑上的后继结点的地址可以通过结点内的链接指针link得到。

C. 在单链表中插入一个新结点到第i个结点后面时必须先找到第i个结点。

D. 在单链表中删除第i个结点时必须先找到第i-1号结点。

3.设两个栈共享同一个空间S[maxSize],1号栈的栈底设在-1位置,2号栈的栈底设在

maxSize位置,它们的栈顶指针分别为top[1]和top[2]。那么其栈满条件是()。

A. top[1]+top[2] > maxSize

B. top[1] == top[2]

C. top[1]+1 == top[2]

D. top[1] == top[2]+1

4.如果一个队列有N个数,现在把a, b, c, d中的数依次进队,当把6个数出队列后,c位

于队列的队头,那么N = ( )。

A. 3

B. 4

C. 5

D. 8

5.设有一个n阶三对角线矩阵A[n][n],现把它的三条对角线上的非零元素按行存放到一

个一维数组B[]中,A[1][1]存放到B[1]中(假定不用0下标),那么B[k]存放的元素的行号是()。

A. ⎣(k+1)/3⎦

B. ⎡(k+1)/3⎤

C. ⎣(k+2)/3⎦

D. ⎡(k+2)/3⎤

6.若对一棵完全N叉树的结点自上向下,同一层自左向右连续编号,根结点编为0号,

则编号为i的结点在第()层(层号从1开始)。

A. ⎡log N i⎤

B. ⎡log N(i*(N-1))⎤

C. ⎣log N(i*(N-1))⎦ +1

D. ⎣log N i*⎦ +1

7.已知某二叉树的前序序列为ABDCE,则它可能得中序序列是()。

A. BCADE

B. BDAEC

C. CBADE

D. BEACD

8.无向图G有23条边,度为4的顶点有5个,度为3的顶点有4个,其余都是度为2的

顶点,则图G最多有()个顶点。

A. 11

B. 12

C. 15

D. 16

9.以下有关m阶B树的说法中错误的是()。

A. 含有n个结点的m阶B树至少包含(n-1)(⎡m/2⎤-1)+1个关键字。

B. 含有n个关键字的m阶B树有n+1个失败结点。

C. 高度为h的m阶B树最多可容纳m h个关键字。

D. 一棵5阶B树包含2187个关键字,则它的最大高度是。

10.如果一台计算机具有多个可并行运行的CPU,就可以同时执行相互独立的任务。归并

排序的各个归并段的归并也可并行执行,因此称归并排序是可并行执行的。以下的排序方法中可并行执行的还有()。

A. 基数排序

B. 快速排序

C. 起泡排序

D. 堆排序

二、综合应用题

41.设有一个数据元素的初始序列{43 12, 27, 54, 66, 47, 05, 38},

(1)依次插入数据元素到一个初始为空的平衡二叉树中,并画出插入后的平衡二叉树,如果

有平衡旋转,请注明旋转的类型。

(2)在(1)所建的平衡二叉树中删除数据元素54, 66,如果有平衡旋转,请注明旋转的类型。42.设A、B是两个长度为n的整型数据的有序顺序表,如果把这2n个整数全部排序,位于第n个位置的整数称为中位数。试编写一个时间复杂度为O(log2n)的算法,求A和B的中位数。

相关文档
最新文档