第一章 绪论
一.选择题
1.数据结构被形式地定义为(K,R),其中 K 是①_的有限集合,R 是 K 上的②_ _的有限集合。
①A.算法
②A.操作
B.数据元素 C.数据操作
D.逻辑结构
B.映象
C.存储
D.关系
2.算法分析的目的是① ,算法分析的两个主要方面是② 。
①A.找出数据结构的合理性
②A.空间复杂性和时间复杂性
B.正确性和简明性
C.可读性和文档性
B.研究算法中的输入和输出的关系
C.分析算法的效率以求改进
D.数据复杂性和程序复杂性
D.分析算法的易懂性和文档
3. 在计算机存储器内表示时,物理地址和逻辑地址相同并且是连续的,称之为(
)
A.逻辑结构 B.顺序存储结构 C.链表存储结构
D.以上都不对
4.数据结构中,在逻辑上可以把数据结构分成:( )。
A.动态结构和静态结构
C.线性结构和非线性结构
B.紧凑结构和非紧凑结构
D.内部结构和外部结构
5.以下属于顺序存储结构优点的是( )。
A.存储密度大
B.插入运算方便
C.删除运算方便
D.可方便地用于各种逻辑结构的存储表示
6.数据结构研究的内容是( )。
A.数据的逻辑结构
B.数据的存储结构
C.建立在相应逻辑结构和存储结构上的算法
D.包括以上三个方面
7.链式存储的存储结构所占存储空间( )。
A.分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
B.只有一部分,存放结点值
C.只有一部分,存储表示结点间关系的指针
D.分两部分,一部分存放结点值,另一部分存放结点所占单元数
8.一个正确的算法应该具有 5 个特性,除输入、输出特性外,另外 3 个特性是( )。
A.确定性、可行性、有穷性
C.有穷性、稳定性、确定性
B.易读性、确定性、有效性
D.可行性、易读性、有穷性
9.以下关于数据的逻辑结构的叙述中正确的是( )。
A.数据的逻辑结构是数据间关系的描述
B.数据的逻辑结构反映了数据在计算机中的存储方式
C.数据的逻辑结构分为顺序结构和链式结构
D.数据的逻辑结构分为静态结构和动态结构
10.算法分析的主要任务是( )。
A.探讨算法的正确性和可读性
B.探讨数据组织方式的合理性
C.为给定问题寻找一种性能良好的解决方案 D.研究数据之间的逻辑关系
第二章 线性表
一、选择题
1.下述哪一条是顺序存储结构的优点?( )
A.存储密度大 B.插入运算方便 C.删除运算方便 D.可方便地用于各种逻辑结构的存储表示
2.下面关于线性表的叙述中,错误的是哪一个?( )
A.线性表采用顺序存储,必须占用一片连续的存储单元。
B.线性表采用顺序存储,便于进行插入和删除操作。
C.线性表采用链接存储,不必占用一片连续的存储单元。
D.线性表采用链接存储,便于插入和删除操作。
3.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
A.顺序表 B.双链表 C.带头结点的双循环链表 D.单循环链表
4.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。
A.单链表 B.仅有头指针的单循环链表 C.双链表 D.仅有尾指针的单循环链表
5.在一个长度为 n 的顺序表中删除第 i 个元素(0<=i<=n)时,需向前移动( )个元素
A.n-i
B.n-i+l
C.n-i-1
D.i
6.从一个具有 n 个结点的单链表中查找其值等于 x 的结点时,在查找成功的情况下,需平均比较( )个元素结点
A.n/2
B.n
C.(n+1)/2
D.(n-1)/2
7.设单链表中指针 p 指向结点 m,若要删除 m 之后的结点(若存在),则需修改指针的操作为( )
A.p->next=p->next->next;
B.p=p->next;
C.p=p->next->next;
D.p->next=p;
8.在一个单链表中,已知 q 结点是 p 结点的前趋结点,若在 q 和 p 之间插入 s 结点,则须执行( )
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
9.线性表的顺序存储结构是一种( )的存储结构。
A.随机存取
B.顺序存取
C.索引存取
D.散列存取
二、填空
1.在线性表的顺序存储中元素之间的逻辑关系是通过( )决定的;在线性表的链式存储中,元素之间的逻辑关系是通过( )
决定的。
2.在双向链表中,每个结点含有两个指针域,一个指向(
)结点,另一个指向( )结点。
3.当对一个线性表经常进行存取操作,而很少进行插入和删除操作时,则采用( ) 存储结构为宜。相反,当经常进行的是插
入和删除操作时,则采用( )存储结构为宜。
第三章 栈和队列
一、选择题
1.已知栈的最大容量为 4。若进栈序列为 1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( )
A.5,4,3,2,1,6
B.2,3,5,6,1,4
C.3,2,5,4,1,6
D.1,4,6,5,2,3
设有一个栈,元素的进栈次序为 A, B, C, D, E,下列是不可能的出栈序列( )
A.A, B, C, D, E
B.B, C, D, E, A
C.E, A, B, C, D
D.E, D, C, B, A
2.在一个具有 n 个单元的顺序栈中,假定以地址低端(即 0 单元)作为栈底,以 top 作为栈顶指针,当做出栈处理时,top 变化为
( )
A.top 不变
B.top=0
C.top--
D.top++
3.向一个栈顶指针为 hs 的链栈中插入一个 s 结点时,应执行( )
A.hs->next=s;
B.s->next=hs;
hs=s;
C.s->next=hs->next;hs->next=s;
D.s->next=hs; hs=hs->next;
4.在具有 n 个单元的顺序存储的循环队列中,假定 front 和 rear 分别为队头指针和队尾指针,则判断队满的条件为( )
A.rear%n= = front
B.(front+l)%n= = rear
C.rear%n -1= = front
D.(rear+l)%n= = front
5.在具有 n 个单元的顺序存储的循环队列中,假定 front 和 rear 分别为队头指针和队尾指针,则判断队空的条件为( )
A.rear%n= = front
B.front+l= rear
C.rear= = front
D.(rear+l)%n= front
6.在一个链队列中,假定 front 和 rear 分别为队首和队尾指针,则删除一个结点的操作为( )
A.front=front->next
B.rear=rear->next C.rear=front->next
D.front=rear->next
7.某堆栈的输入序列为 1,2,3,…,n,输出序列的第一个元素是 n,则第 i 个输出元素为( )
A.i
B.n-i
C.n-i+1
D.哪个元素无所谓
8.用不带头结点的单链表存储队列时,其队头指针指向队头结点,其队尾指针指向队尾结点,则在进行删除操作时(
)。
A.仅修改队头指针
B. 仅修改队尾指针 C. 队头、队尾指针都要修改 D. 队头,队尾指针都可能要修改
二、解答题
4.假设以带头结点的循环链表表示队列,并且只设一个指针指向队尾元素结点(注意不设头指针) ,试编写相应的置空队、判队空 、
入队和出队等算法。
第六章 树和二叉树
一.选择题
1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是( )
A. 栈
B. 队列
C. 树
D. 图
2.设树 T 的度为 4,其中度为 1,2,3 和 4 的结点个数分别为 4,2,1,1 则 T 中的叶子数为( )
A.5
B.6
C.7
D.8
3.已知一棵含 50 个结点的二叉树中只有一个叶子结点,则该树中度为 1 的结点个数为( )
A. 0
B. 1
C. 48
D. 49
5. 用二叉链表表示具有 n 个结点的二叉树时,值为空的指针域的个数为( )
A.n-1
B.n
C.n+l
D.2n
9.一棵完全二叉树上有 1001 个结点,其中叶子结点的个数是( )
A. 250
B. 500
C.254
D.505
E.以上答案都不对
10.有 n 个叶子的哈夫曼树的结点总数为( )
A.不确定
B.2n
C.2n+1
D.2n-1
11.一棵二叉树高度为 h,所有结点的度或为 0,或为 2,则这棵二叉树最少有(
)结点
A.2h
B.2h-1
C.2h+1
D.h+1
13.若度为 m 的哈夫曼树中,其叶结点个数为 n,则非叶结点的个数为( )
A.n-1
B.n/m-1
C.(n-1)/(m-1)
D. n/(m-1)-1
E.(n+1)/(m+1)-1
14.若下面几个符号串编码集合中,不是前缀编码的是( )。
A.{0,10,110,1111}
B.{11,10,001,101,0001}
C.{00,010,0110,1000}
D.{b,c,aa,ac,aba,abb,abc}
15.一棵二叉树的前序遍历序列为 ABCDEFG,它的中序遍历序列可能是( )
A.CABDEFG
B.ABCDEFG
C.DACEFBG
D.ADCFEG
16.线索二叉树是一种( )结构。
A. 逻辑
B. 逻辑和存储 C. 物理 D.线性
17.引入二叉线索树的目的是( )
A.加快查找结点的前驱或后继的速度 B.为了能在二叉树中方便的进行插入与删除
C.为了能方便的找到双亲
D.使二叉树的遍历结果唯一
18.n 个结点的线索二叉树上含有的线索数为( )
A.2n
B.n-l
C.n+l
D.n
19.若 X 是二叉中序线索树中一个有左孩子的结点,且 X 不为根,则 x 的前驱为(
)
A.X 的双亲
B.X 的右子树中最左的结点
C.X 的左子树中最右结点
D.X 的左子树中最右叶结点
20.某二叉树的前序序列和后序序列正好相反,则该二叉树一定是( )的二叉树
A.空或只有一个结点
B.任一结点无左子树
C.高度等于其结点数
D.任一结点无右子树
二.填空题
1. 假定一棵树的嵌套括号表示法为 A ( B ( E ), C ( F ( H , I , J ), G ), D ),则该树的度为___,树的深度为__,
终端点的个数为_,但分支结点的个数为_,双分支结点为__,三分支结点的个数为__,C 结点的双亲结点为__,其孩子结点为__
和为___结点。
2. 一棵深度为 K 的满二叉树结点总数为______ ,一棵深度为 K 的完全二叉树的结点总数的最小值为_____,最大值为
____________。
3. 由三个结点构成的二叉树,共有______种不同的形态。
4. 具有 100 个叶子结点的完全二叉树的深度为( )
5. 高为 h(h>0)的满二叉树对应森林的由( )棵树构成。
三.已知一个二叉树的中序序列为 CBEDAHGIJF,后序序列为 CEDBHJIGFA。
1.画出该二叉树。 2.画出该二叉树的先序线索二叉树。
四.试找出分别满足下列条件的所有二叉树:
1.先序序列和中序序列相同。2.中序序列和后序序列相同。3.先序序列和后序序列相同。
第九章 查找
一.填空题
1.采用二分法进行查找的查找表,应选择___ ________方式的存储结构
2.设在有序表 A[0……9]中进行二分查找,比较一次查找成功的结点数为 ___,比较二次查找成功的结点数为_ ___,比较三次查
找成功的结点数为__ ___,比较四次查找成功的结点数为__ __,比较五次查找成功的结点数为_ __,平均查找长度为___
(3)设在线性表 R[0……59]中进行分块查找,共分 10 块,每块长度为 6,若利用顺序查找法对索引表和子块进行查找,则查找每
个元素的平均查找长度为__ ______。
二.选择题
1.对线性表进行二分查找时,要求线性表必须(
)
A.键值有序的链接表
B.键值有序的顺序表
C.链接表但键值不一定有序
D.顺序但键值不一定有序
2.有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99},当用二分查找法查找键值为 84 的结点时,经()比较后查
找成功。
A.2
B. 3
C.4
D.12
3.顺序检索一个具有 n 个数据元素的线性表,其时间复杂度为_____,二分检索一个具有 n 个数据元素的线性表,其时间复杂度
为( )
A. O(n)
B.O(log2n)
C.O(n2)
D.O(nlog2n)
第十章 排序
一. 填空题
1.排序是将一组任意排列的数据元素按__
___的值从小到大或从大到小重新排列成有序的序列。
2.在排序前,关键字值相等的不同记录间的前后相对位置保持___ 的排序方法称为稳定的排序方法。
3.在排序前,关键字值相等的不同记录间的前后相对位置_______________的排序方法称为不稳定的排序方法。
4.外部排序是指在排序前被排序的全部数据都存储在计算机的_____________储器中。
二.选择题
1.直接插入排序的方法是从第__________个元素开始,插入前边适当位置的排序方法。
A.1
B.2
C.3
D.n
2.冒泡排序的方法是______________的排序方法。
A.稳定
B.不稳定
C.外部
D.选择
3.用快速排序的方法对 n 个数据进行排序,首先将第____个元素移到在排序后的位置。
B.2
C.n-1
D.n
A.1
数据结构
一、选择题。
1.在数据结构中,从逻辑上可以把数据结构分为 ( ) 。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构
2.数据结构在计算机内存中的表示是指( ) 。
A.数据的存储结构 B.数据结构
C.数据的逻辑结构 D.数据元素之间的关系
3.在数据结构中,与所使用的计算机无关的是数据的( )结构。
A.逻辑
B.存储
C.逻辑和存储
D.物理
4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储( )。
A.数据的处理方法
B.数据元素的类型 C.数据元素之间的关系
D.数据的存储方法
5.在决定选取何种存储结构时,一般不考虑(
) 。
A.各结点的值如何 B.结点个数的多少 C.对数据有哪些运算 D.所用的编程语言实现这种结构是否方便。
6.以下说法正确的是 ( )。
A.数据项是数据的基本单位
B.数据元素是数据的最小单位
C.数据结构是带结构的数据项的集合 D.一些表面上很不相同的数据可以有相同的逻辑结构
7.算法分析的目的是(
),算法分析的两个主要方面是(
)。
(1)A.找出数据结构的合理性
B.研究算法中的输入和输出的关系
C.分析算法的效率以求改进
D.分析算法的易读性和文档性
(2)A.空间复杂度和时间复杂度
B.正确性和简明性
C.可读性和文档性
D.数据复杂性和程序复杂性
8.下面程序段的时间复杂度是 ( ) 。
s =0;for( I =0; inext ==NULL
C.head->next ==head
D head!=NULL
15.带头结点的单链表 head 为空的判定条件是 (
) 。
A.head == NULL
B head->next ==NULL
C.head->next ==head
D head!=NULL
16.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用( )存储方式最节省运算时间。
A.单链表 B.给出表头指针的单循环链表
C.双链表 D.带头结点的双循环链表
17.需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 ( ) 。
A.单链表 B.静态链表
C.线性链表
D.顺序存储结构
18.非空的循环单链表 head 的尾结点(由 p 所指向)满足 ( )。
A.p->next == NULL
B.p == NULL
C.p->next ==head
D.p == head
19.在循环双链表的 p 所指的结点之前插入 s 所指结点的操作是 ( ) 。
A.p->prior = s;s->next = p;p->prior->next = s;s->prior = p->prior
B.p->prior = s;p->prior->next = s;s->next = p;s->prior = p->prior
C.s->next = p;s->prior = p->prior;p->prior = s;p->prior->next = s
D.s->next = p;s->prior = p->prior;p->prior->next = s;p->prior = s
20.如果最常用的操作是取第 i 个结点及其前驱,则采用 ( )存储方式最节省时间。
A.单链表 B.双链表
C.单循环链表
D. 顺序表
21.在一个具有 n 个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是( ) 。
A.O(1) B.O(n)
C.O(n2)
D.O(nlog2n)
22.在一个长度为 n(n>1)的单链表上,设有头和尾两个指针,执行( )操作与链表的长度有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素 D.在单链表最后一个元素后插入一个新元素
23.与单链表相比,双链表的优点之一是( )。
A.插入、删除操作更简单 B.可以进行随机访问 C.可以省略表头指针或表尾指针 D.顺序访问相邻结点更灵活
24.如果对线性表的操作只有两种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用( ) 。
A.只有表头指针没有表尾指针的循环单链表 B.只有表尾指针没有表头指针的循环单链表
C.非循环双链表
D.循环双链表
25.在长度为 n 的顺序表的第 i 个位置上插入一个元素(1≤ i ≤n+1),元素的移动次数为:( ) 。
A.n – i + 1
B.n – i
C.i
D.i – 1
26.对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为( ) 。
A.顺序表 B.用头指针表示的循环单链表 C.用尾指针表示的循环单链表
D.单链表
27.下述哪一条是顺序存储结构的优点?( )。
A 插入运算方便 B 可方便地用于各种逻辑结构的存储表示 C 存储密度大
D 删除运算方便
28.下面关于线性表的叙述中,错误的是哪一个?( ) 。
A 线性表采用顺序存储,必须占用一片连续的存储单元 B 线性表采用顺序存储,便于进行插入和删除操作。
C 线性表采用链式存储,不必占用一片连续的存储单元 D 线性表采用链式存储,便于进行插入和删除操作。
29.线性表是具有 n 个( ) 的有限序列。
A.字符
B.数据元素
C.数据项
D.表元素
30.在 n 个结点的线性表的数组实现中,算法的时间复杂度是 O(1)的操作是( ) 。
A.访问第 i(1<=i<=n)个结点和求第 i 个结点的直接前驱(1
33.线性表(a1,a2, … ,an)以链式方式存储,访问第 i 位置元素的时间复杂度为( ) 。
A.O(0)
B.O(1)
C.O(n)
D.O(n2)
34.单链表中,增加一个头结点的目的是为了( )。
A.使单链表至少有一个结点
B.标识表结点中首结点的位置
C.方面运算的实现
D.说明单链表是线性表的链式存储
35.在单链表指针为 p 的结点之后插入指针为 s 的结点,正确的操作是( ) 。
A.p->next=s;s->next=p->next
B. s->next=p->next ;p->next=s;
C.p->next=s;p->next=s->next
D.p->next=s->next;p->next=s
36.线性表的顺序存储结构是一种 ( )。
A.随机存取的存储结构 B.顺序存取的存储结构 C.索引存取的存储结构
D.Hash 存取的存储结构
37.栈的特点是( ) ,队列的特点是 ( ) 。
A.先进先出
B.先进后出
38.栈和队列的共同点是( ) 。
A.都是先进后出 B.都是先进先出 C.只允许在端点处插入和删除元素 D.没有共同点
39.一个栈的进栈序列是 a,b,c,d,e,则栈的不可能的输出序列是( ) 。
A.edcba
B.decba
C.dceab
D.abcde
40.设有一个栈,元素依次进栈的顺序为 A、B、C、D、E。下列( )是不可能的出栈序列。
A.A,B,C,D,E
B.B,C,D,E,A
C.E,A,B,C,D
D.E,D,C,B,A
41.以下( )不是队列的基本运算?
A.从队尾插入一个新元素 B.从队列中删除第 i 个元素 C.判断一个队列是否为空 D.读取队头元素的值
42.若已知一个栈的进栈序列是 1,2,3,,n,其输出序列为 p1,p2,p3,…,pn,若 p1=n,则 pi 为( ) 。
A.i
B.n-i
C.n-i+1
D.不确定
43.判定一个顺序栈 st(最多元素为 MaxSize)为空的条件是( )。
A.st->top != -1
B.st->top == -1
C.st->top != MaxSize
D. st->top == MaxSize
44.判定一个顺序栈 st(最多元素为 MaxSize)为满的条件是(
) 。
A.st->top != -1
B.st->top == -1
C.st->top != MaxSize
D.st->top == MaxSize
45.一个队列的入队序列是 1,2,3,4,则队列的输出序列是 ( ) 。
A.4,3,2,1
B.1,2,3,4
C.1,4,3,2
D.3,2,4,1
46.判定一个循环队列 qu(最多元素为 MaxSize)为空的条件是( )。
A.qu->rear – qu->front ==MaxSize
B.qu->rear – qu->front -1==MaxSize
C.qu->rear ==qu->front
D. qu->rear =qu->front -1
47.在循环队列中,若 front 与 rear 分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是( )。
A.front==rear+1
B.rear==front+1
C.front==rear
D.front==0
48.向一个栈顶指针为 h 的带头结点的链栈中插入指针 s 所指的结点时,应执行( )操作。
A.h->next=s ;
B.s->next=h ;
C.s->next=h ;h =s ;
D.s->next=h->next ;h->next=s ;
49.输入序列为 ABC,可以变为 CBA 时,经过的栈操作为 ( )。
A.push,pop,push,pop,push,pop
B.push,push,push,pop, pop, pop
C.push,push,pop, pop,push,pop
D.push,pop,push,push,pop, pop
50.若栈采用顺序存储方式存储,现两栈共享空间 V[1 m],top[1]、top[2]分别代表第 1 和第 2 个栈的栈顶,栈 1 的底在 V[1],栈
2 的底在 V[m],则栈满的条件是( )。
A.|top[2]-top[1]|=0
B. top[1]+1=top[2]
C.top[1]+top[2]=m
D.top[1]=top[2]
51.设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。
A.线性表的顺序存储结构
B.队列 C.线性表的链式存储结构
D.栈
52.允许对队列进行的操作有( ) 。
A.对队列中的元素排序 B.取出最近进队的元素 C.在队头元素之前插入元素
D.删除队头元素
53.对于循环队列( )。
A.无法判断队列是否为空
B.无法判断队列是否为满 C.队列不可能满
D.以上说法都不对
54.若用一个大小为 6 的数值来实现循环队列,且当前 rear 和 front 的值分别为 0 和 3,当从队列中删除一个元素,再加入两个元
素后,rear 和 front 的值分别为( ) 。
A.1 和 5
B.2 和 4
C.4 和 2
D.5 和 1
55.队列的“先进先出”特性是指( )。
A.最早插入队列中的元素总是最后被删除
B.当同时进行插入、删除操作时,总是插入操作优先
C.每当有删除操作时,总是要先做一次插入操作 D.每次从队列中删除的总是最早插入的元素
56.和顺序栈相比,链栈有一个比较明显的优势是( )。
A.通常不会出现栈满的情况 B.通常不会出现栈空的情况 C.插入操作更容易实现 D.删除操作更容易实现
57.用不带头结点的单链表存储队列,其头指针指向队头结点,尾指针指向队尾结点,则在进行出队操作时( )。
A.仅修改队头指针 B.仅修改队尾指针 C.队头、队尾指针都可能要修改 D.队头、队尾指针都要修改
71.树最适合用来表示(
) 。
A.有序数据元素 B.无序数据元素 C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据
72.深度为 5 的二叉树至多有(
)个结点。
A.16
B. 32
C. 31
C. 10
73.对一个满二叉树,m 个叶子,n 个结点,深度为 h,则(
) 。
A.n = h+m B h+m = 2n
C m = h-1
D n = 2h-1
74.任何一棵二叉树的叶子结点在前序、中序和后序遍历序列中的相对次序(
) 。
A.不发生改变
B.发生改变
C.不能确定
D.以上都不对
76.在下述论述中,正确的是(
)。
①只有一个结点的二叉树的度为 0;②二叉树的度为 2;③二叉树的左右子树可任意交换;
④深度为 K 的顺序二叉树的结点个数小于或等于深度相同的满二叉树。
A.①②③
B.②③④
C.②④
D.①④
78.若一棵二叉树具有 10 个度为 2 的结点,5 个度为 1 的结点,则度为 0 的结点的个数是( ) 。
A.9
B.11
C.15
D.不能确定
79.具有 10 个叶子结点的二叉树中有( )个度为 2 的结点。
A.8
B.9
C.10
D.11
82.某二叉树结点的中序序列为 ABCDEFG,后序序列为 BDCAFGE,则其左子树中结点数目为:( )
A.3
B.2
C.4
D.5
83.已知一算术表达式的中缀形式为 A+B *C–D/E,后缀形式为 ABC *+DE/–,其前缀形式为( ) 。
A.–A+B*C/DE
B.–A+B*CD/E
C –+*ABC/DE
D.–+A*BC/DE
90.顺序查找法适合于存储结构为( )的线性表。
A 散列存储
B 顺序存储或链式存储
C 压缩存储
D 索引存储
91.对线性表进行折半查找时,要求线性表必须( )。
A 以顺序方式存储
C 以链式方式存储
B 以顺序方式存储,且结点按关键字有序排列
D 以链式方式存储,且结点按关键字有序排列
92.采用折半查找法查找长度为 n 的线性表时,每个元素的平均查找长度为( ) 。
A O(n2)
B O(nlog2n)
C O(n)
D O(log2n)