数据结构样卷一

合集下载

数据结构试卷 (1)

数据结构试卷 (1)
SNODE *p; int n = 0; p = head; while( p != NULL ) {
if( p -> data == x ) n ++; p = p -> next;
7
} return( n ); }
4、通过后序遍历来实现。先释放根结点的左子树和右子树所占用的存储空间,然后释放根 结点所占用的存储空间。算法如下:
三、算法题 (本题为 5+10+10+10=35 分)
1. 阅读以下算法,填充空格,使其成为完整的算法。其功能是在一个非递减的顺序存储线 性表中,删除所有值相等的重复元素。 Typedef struct {
int data[max]; int length; } SqlList; void delsame(SqList &L) { int i, j, k; if ( (1) ) {
D.50
5. 设有一表示算术表达式的二叉树(见下图),它所表示的算术表达式是( C )
A. A*B+C/(D*E)+(F-G) C. (A*B+C)/(D*E+(F-G))
B. (A*B+C)/(D*E)+(F-G) D. A*B+C/D*E+F-G
6. 一棵左子树为空的二叉树在先序线索化后,其中空的链域的个数是:( D )。

数据结构练习试卷1(题后含答案及解析)

数据结构练习试卷1(题后含答案及解析)

数据结构练习试卷1(题后含答案及解析)

题型有:1. 选择题

选择题(每小题1分,共75分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。

1.数据结构主要研究数据的______。

A.逻辑结构

B.存储结构

C.逻辑结构和存储结构

D.逻辑结构和存储结构及其运算的实现

正确答案:D

解析:数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据结构一般包括三方面的内容:①数据之间的逻辑关系。从逻辑关系上描述数据,与数据的存储无关。②数据的存储结构。存储结构分为顺序结构和链式结构,是逻辑结构在计算机存储器中的表示,它包括数据元素的表示和关系的表示。③数据的运算。也就是在数据上所施加的一系列操作。只考虑操作的功能是怎样的,暂不考虑如何实现。综上所述,本题的正确答案为选项D。知识模块:数据结构

2.在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。按逻辑结构的不同,数据结构通常可分为______两类。

A.线性结构和非线性结构

B.紧凑结构和稀疏结构

C.动态结构和静态结构

D.内部结构和外部结构

正确答案:A

解析:在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。按逻辑结构的不同,数据结构通常可分为线性结构和非线性结构两类。本题正确答案为选项A。知识模块:数据结构

3.下面叙述不正确的是______。

A.算法的执行效率与数据的存储结构有关

B.算法的空间复杂度是指执行这个算法所需要的内存空间

C.算法的有穷性是指算法必须能在执行有限个步骤之后终止

数据结构试题_试卷一_已填答案

数据结构试题_试卷一_已填答案

模拟试题一

模拟试题一

一、选择题(30分)

1.组成数据的基本单位是( C )。

A)数据项B)数据类型C)数据元素 D)数据变量

2.线性表采用链式存储结构时,要求内存中可用存储单元的地址( D )。

A)必须是连续的B)部分地址必须是连续的

C)一定是不连续的 D)连续或不连续都可以

3.在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是( B )。

A)O(1) B)O(n) C) O(n2) D) O(nlog2n)

4.栈结构通常采用的两种结构是( A )。

A)顺序存储结构和链表存储结构

B)散列方式和索引方式

C)链表存储结构和数组

D)线性链表结构和非线性存储结构

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

A) abcd+- B)abc+*d- C)abc*+d- D)一十*abcd

6.栈和队列的共同特点是(C )。

A)都是先进先出B)都是先进后出

C)只允许在端点处插入和删除元素 D)没有共同点

7.已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为( B )。

A) GEDHFBCA B) DGEBHFCA

C) ABCDEFGH D) ACBFEDHG

8.链表不具有的特点是( B ),

A)不必事先估计存储空间 B)可随机访问任一元素

C)插入删除不需要移动元素 D)所需空间与线性表长度成正比

9.在深度为5的满二叉树中,叶子结点的个数为( C )。

A) 32 B) 31 C) 16 D) 15

10.最简单的交换排序方法是( D )。

数据结构模拟试题一

数据结构模拟试题一

数据结构模拟试题一

一、单选题(每小题2分,共8分)

1、在一个长度为n的顺序存储的线性表中,删除第i个元素(1≤i≤n)时,需要从前向后依次前移个元素。

A n-i

B n- i十1

C n-j-1 C i

2、设一个广义表中结点的个数为n,则求广义表深度算法的时间复杂度为

A O(1)

B O(n)

C O(n2)

D O(1og2n)

3、假定一个顺序队列的队首和队尾指针分别为1和r,则判断队空的条件为

A f+ 1= =r

B r+1= =f

C f= =0

D f= =r

4、从堆中删除一个元素的时间复杂度为。

A O(1)

B O(n)

C O(1og2n)

D O(nlog2n)

二、填空题(每空1分,共32分)

1、在线性结构、树结构和图结构中,前驱和后继结点之间分别存在着

和的联系。

2、在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为

,若假定p为一个数组a中的下标,则其后继结点的下标的。

3、在初始化一个稀疏矩阵的函数定义中,矩阵形参应说明为参数。

4、栈又称为表,队列又称为表。

5、后缀表达式“4 5+3*2 4+ *”的值为。

6、一棵深度为5的满二叉树中的结点较为个,一棵深度为3的满四叉树中的结点数为个。

7、对于一棵含有40个结点的理想平衡树,它的高度为。

8、从一棵二叉搜索树中查找一个元素时,若元素的值等于根结点的值,则表明

,若元素的值小于根结点的值,则继续向查找,若元素的大于根结点的查找。

9、当从一个小根堆中删除一个元素时,需要把

元素填补到位置,然后再长条件把它逐层

调整。

10、对于一个具有n个顶点的图,若采用邻接炬阵表示,则矩阵大小为

数据结构试卷01

数据结构试卷01

注意:请在答题纸上标清题目序号,将所有答案写在答题纸上。

一、单选题:(本题满分20分,每小题2分)

1、数据的逻辑结构可分为()两类。

A.动态结构和静态结构

B.紧凑结构和非紧凑结构

C.线性结构和非线性结构

D.内部结构和外部结构

2、对于一个头指针为head的带头结点的单链表,判定该表为空表的条件是()。

A.head==NULL

B.head->next==NULL

C.head->next==head

D.head!=NULL

3、一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是()。

A.edcba

B.decba

C.dceab

D.abcde

4、若串s='software',其子串的个数是()。

A.8

B.9

C.36

D.37

5、一棵完全二叉树上有1001个结点,其中叶子结点的个数是()。

A.250

B.500

C.505

D.501

6、任何一棵二叉树的叶子结点在先序、中序和后序遍历序列中的相对次序()。

A.不发生改变

B.发生改变

C.不能确定

D.以上都不对

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

A.对称矩阵

B.零矩阵

C.上三角矩阵

D.对角矩阵

8、若一个有向图中的顶点不能排成一个拓扑序列,则可断定该有向图()。

A.是个有根有向图

B.是个强连通图

C.含有多个入度为0的顶点

D.含有顶点数目大于1的强连通分量

9、对线性表进行折半查找时,要求线性表必须()。

A.以顺序方式存储

B.以链式方式存储

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

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

10、对数据序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排序变为{9,15

《数据结构》试卷第1套

《数据结构》试卷第1套

三、单项选择题:(每小题1分,共5分)

1.对于只在表的首、尾进行插入操作的线性表,宜采用的存储结构为:

A) 顺序表B) 用头指针表示的单循环链表

C) 用尾指针表示的单循环链表D) 单链表

2.假设以第一个元素为分界元素,对字符序列(Q, H, C, Y, P, A, M, S, R, D, F, X)进行快速排序,则第一次划分的结果是:

A) (A, C, D, F, H, M, P, Q, R, S, X, Y) B) (A, F, H, C, D, P, M, Q, R, S, Y, X) C) (F, H, C, D, P, A, M, Q, R, S, Y, X) D) (P, A, M, F, H, C, D, Q, S, Y, R, X) 3.下面是三个关于有向图运算的叙述:

(1)求有向图结点的拓扑序列,其结果必定是唯一的

(2)求两个指向结点间的最短路径,其结果必定是唯一的

(3)求AOE网的关键路径,其结果必定是唯一的

其中哪个(些)是正确的?

A) 只有(1)B) (1)和(2)C) 都正确D) 都不正确4.若进栈序列为a, b, c,则通过入出栈操作可能得到的a, b, c的不同排列个数为:

A) 4 B) 5 C) 6 D) 7

5. 以下关于广义表的叙述中,正确的是:

A) 广义表是由0个或多个单元素或子表构成的有限序列

B) 广义表至少有一个元素是子表

C) 广义表不能递归定义

D) 广义表不能为空表

四、填空题:(每小题2分,共 20分)

1.一棵含有101个结点的完全二叉树存储在数组A[1..101]中, 对1≤k≤101, 若A[k]是非叶结点, 则k的最小值是: ,k的最大值是: 。

数据结构试卷(一)

数据结构试卷(一)

6. 设有一组初始记录关键字为(45,80,48,40,22,78),要求构造一棵二叉排序树并给 出构造过程。 四、算法设计题(16 分) 1. 设有一组初始记录关键字序列(K1,K2,…,Kn),要求设计一个算法能够在 O(n)的时 间复杂度内将线性表划分成两部分, 其中左半部分的每个关键字均小于 Ki, 右半部分的 每个关键字均大于等于 Ki。 2. 设有两个集合 A 和集合 B,要求设计生成集合 C=A∩B 的算法,其中集合 A、B 和 C 用链 式存储结构表示。
数据结构试卷(二)
一、选择题(24 分) 1.下面关于线性表的叙述错误的是( )。 (A) 线性表采用顺序存储必须占用一片连续的存储空间 (B) 线性表采用链式存储不必占用一片连续的存储空间 (C) 线性表采用链式存储便于插入和删除操作的实现 (D) 线性表采用顺序存储便于插入和删除操作的实现 2.设哈夫曼树中的叶子结点总数为 m,若用二叉链表作为存储结构,则该哈夫曼树中总共 有( )个空指针域。 (A) 2m-1 (B) 2m (C) 2m+1 (D) 4m 3.设顺序循环队列 Q[0: M-1]的头指针和尾指针分别为 F 和 R,头指针 F 总是指向队头元素 的前一位置,尾指针 R 总是指向队尾元素的当前位置,则该循环队列中的元素个数为 ( )。
(A) R-F (B) F-R (C) (R-F+M)%M (D) (F-R+M)%M 4.设某棵二叉树的中序遍历序列为 ABCD,前序遍历序列为 CABD,则后序遍历该二叉树 得到序列为( )。 (A) BADC (B) BCDA (C) CDAB (D) CBDA 5.设某完全无向图中有 n 个顶点,则该完全无向图中有( )条边。 (A) n(n-1)/2 (B) n(n-1) (C) n2 (D) n2-1 6.设某棵二叉树中有 2000 个结点,则该二叉树的最小高度为( )。 (A) 9 (B) 10 (C) 11 (D) 12 7.设某有向图中有 n 个顶点,则该有向图对应的邻接表中有( )个表头结点。 (A) n-1 (B) n (C) n+1 (D) 2n-1 8.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字 5 为基准进行一趟快 速排序的结果为( )。 (A) 2,3,5,8,6 (B) 3,2,5,8,6 (C) 3,2,5,6,8 (D) 2,3,6,5,8 二、填空题(24 分) 1. 为了能有效地应用 HASH 查找技术,必须解决的两个问题是 ____________________和 __________________________。 2. 下面程序段的功能实现数据 x 进栈,要求在下划线处填上正确的语句。 typedef struct {int s[100]; int top;} sqstack; void push(sqstack &stack,int x) { if (stack.top==m-1) printf(“overflow”); else {____________________;_________________;} } 3. 中序遍历二叉排序树所得到的序列是___________序列(填有序或无序)。 4. 快速排序的最坏时间复杂度为___________,平均时间复杂度为__________。 5. 设某棵二叉树中度数为 0 的结点数为 N0,度数为 1 的结点数为 N1,则该二叉树中度数为 2 的结点数为_________;若采用二叉链表作为该二叉树的存储结构,则该二叉树中共 有_______个空指针域。 6. 设某无向图中顶点数和边数分别为 n 和 e,所有顶点的度数之和为 d,则 e=_______。 7. 设一组初始记录关键字序列为(55,63,44,38,75,80,31,56),则利用筛选法建立 的初始堆为___________________________。 8. 已知一有向图的邻接表存储结构如下:从顶点 1 出发,DFS 遍历的输出序列是 ,BFS 遍历的输出序列是

数据结构(I卷)

数据结构(I卷)

数据结构试卷(I卷)

班级:___________学号:___________姓名:___________得分:___________

题目部分,(卷面共有45题,100分,各大题标有题量和总分)

一、判断正误(11小题,共11分)

1.即使对不含相同元素的同意输入序列进行两组不同的、合法的入栈和出栈组合操作,所得的输出序也一定相同。()

2.栈和队列都是限制存取点的线性结构。( )

3.任何一个非空广义表,其表头可能是单元素或广义表,其表尾必定是广义表。( )

4.己知二叉树的前序遍历序列和后序遍历序列并不能唯一地确定这棵树,因为不知道树的根结点是哪一个。( )

5.有n个数存放在伊维数组h[1…n]中,在进行顺序查找时.这n个数的排列有序或无序其平均查找长度小同。( )

6.二叉树中,具有两个子女的结点的中序后继结点最多只能有一个子女。

7.用希尔(Shell)方法排序时,若关键字的初始排序杂乱无序,则排序效率就低。()

8.外部排序是把外存文件调入内存,可利用内部排序的方法进行排序,因此排序所花的时间取决于内部排序的时间。()

9.完全二叉树就是满二叉树。()

10.在散列法中,一个可用散列函数必须保证绝对不产生冲突。()

11.快速排序是对起泡排序的一种改进。( )

二、单项选择题(20小题,共42分)

1.在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,其修改指针的操作是_________

A、B、

C、

D、

2.双向链表中有两个指针域,llink和rlink分别指向前趋及后继,设p指向链表中的一个结点,现要求删去p所指结点,则正确的删除是()(链中结点数大于2,p不是第一个结点)

数据结构考试试题一及参考答案

数据结构考试试题一及参考答案

课程名称: 数据结构 考试时间:

姓名: 班级: 学号: 一、选择题(每题2分,共20分)

( )1、二叉树是非线性数据结构,所以__________。

A)顺序存储结构和链式存储结构都能存储;B)它不能用链式存储结构存储; C)它不能用顺序存储结构存储;D)顺序存储结构和链式存储结构都不能使用

( )2、数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,

称之为__________。

A )随机存储结构

B )逻辑结构

C )顺序存储结构

D )链式存储结构

( )3、判定一个栈ST (最多元素为m0)为空的条件是__________。 A )ST->top<>0 B )ST->top=0

C )ST->top<>m0

D )ST->top=m0

( )4、已知图的邻接矩阵如下,根据算法思想,则从顶点0出发按深度优先遍历的

结点序列是_______。

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

A )32

B )33

C )34

D )15

( )6、给定二叉树的两种遍历序列,分别是:先序遍历序列:D ,A ,C ,E ,B ,H , F ,G ,I ;中序遍历序列:D ,C ,B ,E ,H ,A ,G ,I ,F ;则其后序遍历序

列为__________。

A )BHECGIFAD

B ) BHECIGADF

C )BHECIGFA

D D ) CHEBIGADF ( )7、有8个结点的有向图最多有___________条边。 A )56 B )28 C )14 D )112

数据结构试题库_01

数据结构试题库_01

数据结构试题(一)

一、选择题

1、带头结点的单链表head为空的判定条件是________。

A) head->next = “null” B) head = null

C) head != null D) head->next = null

2、一个栈的入栈序列是a,b,1,5,6,则栈的不可能的输出序列是________。

A) 6,5,1,b,a B) 6,a,b,5,1

C) 1,b,a,5,6 D) 5,1,b,a,6

3、在线索化二叉树中,T 指针所指结点没有右子树的充要条件是_________。

A) T->RLchild = null B) T—>Ltag = 1

C) T—>Rtag = 0 D) T—>Rtag = 1

4、二叉树的先序遍历结点访问顺序是gbcaef,中序遍历结点访问顺序是cbagfe,则后

序遍历结点访问顺序是______。

A) cabfeg B) cbagfe

C) bacfeg D) cabgef

5、请指出在顺序表{2,5,7,10,14,15,18,23,35,41,52}中用折半查找关键字

12需做多少次关键字比较______。

A) 2 B) 3 C) 4 D) 5

6、设有字符序列{Q,H,C,Y,P,A,M,S,R,D,F,X},新序列{F,H,C,

D,P,A,M,Q,R,S,Y,X}是下列哪个排序算法一趟扫描的结果_______。

A) 冒泡排序B) 初始步长为4的希尔排序

C) 二路归并排序D) 从第一个元素为支点的快速排序

7、用顺序查找法对具有n个结点的线性表查找一个结点所需的平均比较次数为

数据结构练习试卷1(题后含答案及解析)

数据结构练习试卷1(题后含答案及解析)

数据结构练习试卷1(题后含答案及解析)

题型有:1. 选择题

选择题(每小题1分,共75分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。

1.数据结构主要研究数据的______。

A.逻辑结构

B.存储结构

C.逻辑结构和存储结构

D.逻辑结构和存储结构及其运算的实现

正确答案:D

解析:数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据结构一般包括三方面的内容:①数据之间的逻辑关系。从逻辑关系上描述数据,与数据的存储无关。②数据的存储结构。存储结构分为顺序结构和链式结构,是逻辑结构在计算机存储器中的表示,它包括数据元素的表示和关系的表示。③数据的运算。也就是在数据上所施加的一系列操作。只考虑操作的功能是怎样的,暂不考虑如何实现。综上所述,本题的正确答案为选项D。知识模块:数据结构

2.在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。按逻辑结构的不同,数据结构通常可分为______两类。

A.线性结构和非线性结构

B.紧凑结构和稀疏结构

C.动态结构和静态结构

D.内部结构和外部结构

正确答案:A

解析:在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。按逻辑结构的不同,数据结构通常可分为线性结构和非线性结构两类。本题正确答案为选项A。知识模块:数据结构

3.下面叙述不正确的是______。

A.算法的执行效率与数据的存储结构有关

B.算法的空间复杂度是指执行这个算法所需要的内存空间

C.算法的有穷性是指算法必须能在执行有限个步骤之后终止

数据结构复习卷

数据结构复习卷

数据结构试题(一)

1.在一个长度为n的线性表中顺序查找值为x的元素时,在等概率情况下查找成功时的平

均查找长度为( C )。

A. n

B. n/2

C. (n+1)/2

D. (n-1)/2

2.在一个长度为n的顺序存储线性表中,向第i个元素(1<=i<=n+1)之前插入一个新元

素时,需要从前向后依次后移( B )个元素。

A n-i

B n-i+1

C n-i-1

D i

3.在一个单链表HL中,若要向表头插入一个有指针p指向的结点,则执行( B )

A HL=p;p->next=HL;

B p->next=HL;HL=p;

C p->next=HL;p=HL;

D p->next=HL->next;HL->next=p;

4.栈的插入和删除操作在( A )进行。

A. 栈顶

B.栈底

C. 任意位置

D. 指定位置

5.假定一个链队的队首和队尾指针分别为front和rear,则判别队空的条件为( D )。

A. front==rear

B.front!=NULL

C. rear!=NULL

D.front==NULL

6.若让元素1,2,3依次进栈,则出栈次序不可能出现( C )种情况。

A 3,2,1

B 2,1,3

C 3,1,2

D 1,3,2

7.在稀疏矩阵的带行指针向量的链接存储中,每个行单链表中的结点都具有相同的

( A )

A 行号

B 列号

C 元素值

D 地址

8.当利用大小为N的数组顺序存储一个栈时,假定用top==N表示栈空,则向这个栈插入

一个元素时,首先应执行( B )语句修改top指针。

A top++

B top--

C top=0

数据结构试卷及答案

数据结构试卷及答案
数据结构试卷(一)
一、选择题(20 分) 1.组成数据的基本单位是( ) 。 (A) 数据项 (B) 数据类型 (C) 数据元素 (D) 数据变量 2.设数据结构 A=(D,R),其中 D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数 据结构 A 是( ) 。 (A) 线性结构 (B) 树型结构 (C) 图型结构 (D) 集合 3.数组的逻辑结构不同于下列( )的逻辑结构。 (A) 线性表 (B) 栈 (C) 队列 (D) 树 4.二叉树中第 i(i≥1)层上的结点数最多有( )个。 i i-1 (A) 2i (B) 2 (C) 2 (D) 2i-1 5.设指针变量 p 指向单链表结点 A,则删除结点 A 的后继结点 B 需要的操作为( ) 。 (A) p->next=p->next->next (B) p=p->next (C) p=p->next->next (D) p->next=p 6.设栈 S 和队列 Q 的初始状态为空,元素 E1、E2、E3、E4、E5 和 E6 依次通过栈 S,一个元素出栈后即进 入队列 Q,若 6 个元素出列的顺序为 E2、E4、E3、E6、E5 和 E1,则栈 S 的容量至少应该是( ) 。 (A) 6 (B) 4 (C) 3 (D) 2 7.将 10 阶对称矩阵压缩存储到一维数组 A 中,则数组 A 的长度最少为( ) 。 (A) 100 (B) 40 (C) 55 (D) 80 8.设结点 A 有 3 个兄弟结点且结点 B 为结点 A 的双亲结点,则结点 B 的度数数为( ) 。 (A) 3 (B) 4 (C) 5 (D) 1 9.根据二叉树的定义可知二叉树共有( )种不同的形态。 (A) 4 (B) 5 (C) 6 (D) 7 10.设有以下四种排序方法,则( )的空间复杂度最大。 (A) 冒泡排序 (B) 快速排序 (C) 堆排序 (D) 希尔排序 二、填空题(30 分) 1. 设顺序循环队列 Q[0:m-1]的队头指针和队尾指针分别为 F 和 R,其中队头指针 F 指向当前队头元素 的前一个位置,队尾指针 R 指向当前队尾元素所在的位置,则出队列的语句为 F =____________;。 2. 设线性表中有 n 个数据元素,则在顺序存储结构上实现顺序查找的平均时间复杂度为___________, 在链式存储结构上实现顺序查找的平均时间复杂度为___________。 3. 设一棵二叉树中有 n 个结点,则当用二叉链表作为其存储结构时,该二叉链表中共有________个指针 域,__________个空指针域。 4. 设指针变量 p 指向单链表中结点 A,指针变量 s 指向被插入的结点 B,则在结点 A 的后面插入结点 B 的操作序列为______________________________________。 5. 设无向图 G 中有 n 个顶点和 e 条边,则其对应的邻接表中有_________个表头结点和_________个表结 点。 6. 设无向图 G 中有 n 个顶点 e 条边,所有顶点的度数之和为 m,则 e 和 m 有______关系。 7. 设一棵二叉树的前序遍历序列和中序遍历序列均为 ABC,则该二叉树的后序遍历序列为__________。 8. 设一棵完全二叉树中有 21 个结点,如果按照从上到下、从左到右的顺序从 1 开始顺序编号,则编号 为 8 的双亲结点的编号是___________,编号为 8 的左孩子结点的编号是_____________。 9. 下列程序段的功能实现子串 t 在主串 s 中位置的算法,要求在下划线处填上正确语句。 int index(char s[ ], char t[ ]) { i=j=0; while(i<strlen(s) && j<strlen(t)) if(s[i]==t[j]){i=i+l; j=j+l;}else{i=_______; j=______;} if (j==strlen(t))return(i-strlen(t));else return (-1); }

数据结构试卷1(含答案)

数据结构试卷1(含答案)
m=0:
for (j=1; j<n-i; j++)
if (A[j-1]>A[j])
{
t=A[j-l];
A[j-1]=A[j];
A[j]=t;
m=1;
}
}
}
回答问题:
已知整型数组A[ ]={34,26,15,89,42},写出执行函数调用f32(A,5)后的输出结果。
33.程序填空
(1)
//////直接插入排序
数据结构试卷
一、单项选择题(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.下列选项中与数据存储结构无关的术语是()
A.顺序表B.链表C.链队列D.栈
2.将两个各有n个元素的有序表归并成一个有序表,最少的比较次数是()
4.递归实现或函数调用时,处理参数及返回地址,应采用的数据结构是()
A.堆栈B.多维数组C.队列D.线性表
5.设有两个串p和q,其中q是p的子串,则求q在p中首次出现位置的算法称为()
A.求子串B.串联接C.串匹配D.求串长
6.对于广义表A,若head(A)等于tail(A),则表A为()
A.( )B.(( )) C.(( ),( ))D.(( ),( ),( ))

数据结构试卷一及答案

数据结构试卷一及答案

习题一

一、选择题 ( 每小题 2 分,共 20 分 )

1.以下程序段的时间复杂度为()。

i=0,s=0; while (s

(A) O(n/2) (B) O(n/3) (C) O(n) (D) O(n2)

2.设某链表中最常用的操作是在链表的尾部插入或删除元素,则选用以下()存储方式最节省运算时间。

(A) 单向链表 (B) 单向循环链表 (C) 双向链表 (D) 双向循环链表

3.设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s 指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为()。

(A) s->next=p->next;p->next=-s; (B) q->next=s; s->next=p;

(C) p->next=s->next;s->next=p;(D) p->next=s;s->next=q;

4.设输入序列为1、2、3、4、5、6,则通过栈的作用后可以得到的输出序列为()。

(A) 5,3,4,6,1,2 (B) 3,2,5,6,4,1

(C) 3,1,2,5,4,6 (D) 1,5,4,6,2,3

5.设有一个10阶的下三角矩阵A(包括对角线),按照从上到下、从左到右的顺序存储到连续的55个存储单元中,每个数组元素占1个字节的存储空间,则A[5][4]地址与A[0] [0]的地址之差为()。

(A) 10 (B) 19 (C) 28 (D) 55

6.设一棵m叉树中有N1个度数为1的结点,N2个度数为2的结点,……,Nm个度数为m的结点,则该树中共有()个叶子结点。

数据结构试卷带答案

数据结构试卷带答案

数据结构试卷(一)

一、选择题(20分)

1.组成数据的基本单位是( 1。C)。

(A)数据项(B)数据类型(C)数据元素(D)数据变量

2.设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={〈1,2〉,〈2,3〉,〈3,4〉,〈4,1〉},则数据结构A是(C)。

(A) 线性结构(B)树型结构 (C)图型结构(D) 集合

3.数组的逻辑结构不同于下列(D)的逻辑结构。

(A) 线性表(B)栈(C)队列(D) 树

4.二叉树中第i(i≥1)层上的结点数最多有(C)个。

(A) 2i(B) 2i(C) 2i-1(D) 2i—1

5.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为(。A )。

(A) p—>next=p->next—〉next (B) p=p—〉next

(C)p=p-〉next—>next (D) p—〉next=p

6.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量至少应该是(。C ).

(A) 6 (B) 4 (C) 3 (D) 2

7.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为(C )。

(A) 100 (B) 40 (C) 55 (D) 80

8.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为(8。B

(A) 3 (B) 4 (C) 5 (D) 1

9.根据二叉树的定义可知二叉树共有( B)种不同的形态。

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

样卷一

一、判断题(10分)

正确的在括号内打√,错误的打╳。

()1、在单链表中,头结点是必不可少的。

()2、如果一个二叉树中没有度为1的结点,则必为满二叉树。()3、循环链表的结点结构与单链表的结点结构完全相同,只是结点间的连接方式不同。

()4、顺序存储结构只能用来存放线性结构;链式存储结构只能用来存放非线性结构。

()5、在一个大根堆中,最小元素不一定在最后。

()6、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和。

()7、在采用线性探测法处理冲突的散列表中,所有同义词在表中相邻。

()8、内部排序是指排序过程在内存中进行的排序。

()9、拓扑排序是指结点的值是有序排列。

()10、AOE网所表示的工程至少所需的时间等于从源点到汇点的最长路径的长度。

二、选择题(30分,每题1.5分)

1、有一个含头结点的单链表,头指针为head,则判断其是否为空

的条件为:_。

A、head=NIL

B、head^.next=NIL

C .head^.next=head D、head<>NIL

或A.head==NULL B.Head->next==NULL

C、head->next==head

D、Head!=NULL

2、非空的循环单链表head的尾指针p满足_。

A、p^.head=NIL

B、p=NIL

C、p^.next=head

D、p=head

或A、p->next=NULL B、p==NULL

C、p->next==head

D、p==head

3、链表不具有的特点是_。

A、可随机访问任一个元素

B、插入删除不需要移动元素

C、不必事先估计存储空间

D、所需空间与线性表的长度成正比

4、若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用_存储方式最节省运算时间。

A、单链表

B、双链表

C、单循环链表

D、带头结点的双循环链表

5、若线性表最常用的操作是存取第i个元素及其前驱的值,则采用_存储方式节省时间。

A、单链表

B、双链表

C、单循环链表

D、顺序表

6、设一个栈的输入序列为A、B、C、D,则借助一个栈所得到的输出序列不可能的是_。

A、A,B,C,D

B、D,C,B,A

C、A,C,D,B

D、D,A,B,C

7、一个队列的入队序列是1,2,3,4,则队列的输出序列是_。

A、4,3,2,1

B、1,2,3,4

C、1,4,3,2

D、3,2,4,1

8、设循环队列中数组的下标范围是1~n,其头尾指针分别是f,r,若队列中元素个数为_。

A、r-f

B、r-f+1

C、(r-f+1)mod n

D、(r-f+n)mod n

9、串是_。

A、不少于一个字母的序列

B、任意个字母的序列

C、不少于一个字符的序列

D、有限个字符的序列

10、数组A[1..5,1..6]的每个元素占5个单元,将其按行优先次序存储在起始地址为1000的连续内存单元中,则A[5,5]的地址是_。

A、1140

B、1145

C、1120

D、1125

11、将一棵有100个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点编号为1,则编号为49的结点的

左孩子的编号为_。

A、98

B、99

C、50

D、48

12、对二叉树从1开始编号,要求每个结点的编号大于其左右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用_实现编号。

A、先序遍历

B、中序遍历

C、后序遍历

D、从根开始进行层次遍历

13、某二叉树的先序序列和后序序列正好相反,则该二叉树一定是_的二叉树。

A、空或只有一个结点

B、高度等于其结点数

C、任一结点无左孩子

D、任一结点无右孩子

14、在有n个叶子结点的哈夫曼树中,其结点总数为_。

A、不确定

B、2n

C、2n+1

D、2n-1

15、一个有n个结点的无向图最多有_条边。

A、n

B、n(n-1)

C、n(n-1)/2

D、2n

16、任何一个无向连通图的最小生成树_。

A、只有一棵

B、有一棵或多棵

C、一定有多棵

D、可能不存在

17、一组记录的关键字为(46,79,56,38,40,84),利用快速排序的方法,以第一个记录为基准得到一个划分结果为_。

A、38,40,46,56,79,84

B、40,38,46,79,56,84

C、40,38,46,56,79,84

D、40,38,46,84,56,79

18、已知数据表A中每个元素距其最终位置不远,则采用_排序算法最节省时间。

A、堆排序

B、插入排序

C、快速排序

D、直接选择排序

19、下列排序算法中,_算法可能会出现下面情况:初始数据有序时,花费时间反而最多。

A、堆排序

B、冒泡排序

C、快速排序

D、SHELL排序

20、对于键值序列(12,13,11,18,60,15,7,18,25,100),

相关文档
最新文档