核心知识点
1.二叉树的第k层的结点最多为( D)
A、2k-1 B、2k+1 C、2k-1 D、2k-1
2.以下数据结构中哪一个是非线性结构(D )
A.队列B、栈
C、线性表D、二叉树
3.在数据结构中,从逻辑上可以把数据结构分成( C)
A. 动态结构和静态结构
B. 紧凑结构和非紧凑结构
C. 线性结构和非线性结构
D. 内部结构和外部结构
4.栈和队列的共同特点是( A)
B、都是先进后出
C、都是先进先出
D、没有共同点
5.如果二叉树T2是由一棵树T1转换而来的二叉树,那么T1结点的先根遍历序列对应T2的(A ) 序列。
A.先序遍历
B.中序遍历
C.层次遍历
D.后序遍历
6.给定一棵树的二叉链表存储结构,把这棵树转换为二叉树后,这棵二叉树的形态是(A )。
A.唯一的
B.有多种,但根结点都没有右孩子
C.有多种,但根结点都没有左孩子
D.有多种
7.与单链表相比,双链表(C )
8.循环队列存储在长度为m+1数组中,则入队时的操作为( D)
A、rear=rear+1 B、rear=(rear+1)%(m-1)
C、rear=(rear+1)%m D、rear=(rear+1)%(m+1)
9.对于顺序存储的线性表,访问元素和插入元素的时间复杂度分别为(C )
A、O(n) O(n) B、O(n) O(1)
C、O(1) O(n) D、O(1) O(1)
10.基于中序线索化链表,其头结点指针为head,对应的二叉树为空的判断条件是(C )。
A.head->ltag==0
B.head==NULL
C.head->lchildhead && head->rchildhead
D.head->rtag==1
11.讨论树、森林和二叉树的关系,目的是(D )。
A.只是为了方便定义树、森林的遍历方法
B.将树、森林转化成二叉树,统一逻辑表示形式
C.体现一种技巧,没有什么实际意义
D.将树、森林按二叉树的存储结构进行存储,并利用二叉树的算法解决树与森林的有关问题
12.适用于折半查找的表的存储方式及元素排列要求为(D )
A、链接方式存储,元素无序 B、链接方式存储,元素有序 C、顺序方式存储,元素无序D、顺序方式存储,元素有序
13.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数为(B )
A、9 B、11 C、15 D、不确定
14.用13个权值构造哈夫曼树,则该哈夫曼树共有( D) 个结点。
A.26 B.13 C.12 D.25
15.对n(n≧2)个权值不同的字符依哈夫曼算法构造哈夫曼树,下面关于该哈夫曼树的叙述中错误的是( B) 。
A.树中一定没有度为1的结点
B.该树一定是一棵完全二叉树
C.树中两个权值最小的结点一定是兄弟结点
D.树中任何一个非叶结点的权值一定不小于下一层任意一个结点的权值
16.具有10个叶子结点的二叉树中有(B )个度为2的结点
A、8 B、9 C、10 D、11
17.一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为(A )
A、(40,38,46,56,79,84)
B、(40,38,46,79,56,84)
C、(38,40,46,56,79,84)
D、(40,38,46,84,56,79)
18.将下图所示的二叉树按中序线索化,结点c的左指针与结点h的右指针分别指向( A)。
A.a, g B.a, c C.h, g D.g, c
19.二叉树线索化后,仍不能有效求解的问题是(D ) 。
A.中序线索二叉树中求中序前驱
B.中序线索二叉树中求中序后继
C.先序线索二叉树中求先序后继
D.后序线索二叉树中求后序后继
20.关键路径是AOE网中(A )
21.就平均性能而言,目前最好的内部排序方法是(D )
A、冒泡排序B、希尔排序
C、堆排序D、快速排序
22.最大容量为n的循环队列,队尾指针是rear,队头是front,则队空的条件是(B )
A、(rear+1)%n == front B、rear == front
C、rear+1 == front D、(rear-1)%n == front
23.设栈的输入序列是1,2,3,4则( D)不可能是其出栈序列
A、1,2,4,3 B、2,1,3,4
C、1,4,3,2D、4,3,1,2
24.顺序表比链表的存储密度更大,是因为(B )
25.用顺序存储的方法将n个结点的完全二叉树中所有结点按层逐个依从左至右的次序存放在一维数组R[1:n]中,若结点R[i]有左孩子,则左孩子是(B ) 。
A.R[2i+2] B.R[2i] C.R[2i-1] D.R[2i+1]
26.一棵深度为k且只有k个结点的二叉树按照完全二叉树顺序存储的方式存放于一个一维数组R[n]中,则n至少是(C )才能确保正确存储。
A.2k B.2k+1 C. 2k-1 D. 2k
27.以下存储结构中,不是树的存储结构是 ( C) 。
A.孩子兄弟链表 B.双亲表示法
C.广义表D.孩子链表存储结构
28.对线性表,下列哪种情况下应当采用链表表示(B )
29.边远山区的N个小村庄,现要为他们建成能互相通信的网,并且总的花费最少,这可以归结为什么问题(D )
A、最短路径B、关键路径
C、拓扑排序D、最小生成树
30.二叉树采用二叉链表存储结构存储,根指针为t,下列递归算法求其叶子结点的个数, 算法的画线处应填的语句是(B )。
A.t->lchild == NULL && t->rchild != NULL
B.t->lchild == NULL && t->rchild == NULL
C.t->lchild == NULL
D.t->rchild == NULL
31.判断线索二叉链表中*p结点有右孩子结点的条件是( D)。
A.p->rchild!=NULL
B.p->rtag==1
C.p!=NULL
D.p->rtag==0
32.设有6个结点的无向图,该图至少应有( A)条边才能确保是一个连通图。
A、5 B、6 C、7 D、8
33.下列关于AOE网的叙述中,不正确的是(B )
5.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5,e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的序列是e2,e4,e3,e6,e5,e1,则栈的容量至少应该是3 。
6.一个循环队列Q的存储空间大小为M,其队头和队尾指针分别为front和rear,则循环队列中元素的个数为:(rear-front+M) % M 。
7.在具有n个元素的循环队列中,队满时具有n - 1 个元素。
8.设循环队列的容量为70,现经过一系列的入队和出队操作后,front为20,rear为11,则队列中元素的个数为61 。