设栈的存储空间S(1,60)为S(1:60),初始状态为top=61。经过一系列入栈和退栈操作后,top=1,

原标题:史上最全题库:选择题第1单元 数据结构与算法(1)

无论是手机app还是软件

多少套多少套的、1套20个选择的

如果你还用成套版本的题库

如果你手里总共才400-500道选择的

加起来数量就不全,差太多啦~~

用它复习,有多大胜算?

下面我们发布最全选择题题库版本,先来发布第1单元的第1部分:

什么?你觉得下面这些题不是二级Office考试内容?那你可太OUT了!

这叫做公共基础,必考的内容!

这都不知,怎能考过?赶快跟着小编复习吧——

考试A、B、C、D顺序会错乱哦,不要背选项字母

1) 下列叙述中正确的是

A) 设计算法时只需要考虑结果的可靠性

C) 设计算法时要考虑时间复杂度和空间复杂度

D) 设计算法时只需要考虑数据结构的设计

2) 循环队列的存储空间为 Q(1:50),初始状态为 front=rear=50。经过一系列正常的入队与退队操作后,front=rear=25,此后又插入一个元素,则循环队列中的元素个数为

B) 1,或50且产生上溢错误

3) 下列算法中均以比较作为基本运算,则平均情况与最坏情况下的时间复杂度相同的是

A) 在顺序存储的线性表中寻找最大项

B) 在顺序存储的有序表中进行对分查找

C) 在链式存储的有序表中进行查找

D) 在顺序存储的线性表中进行顺序查找

4) 设表的长度为20。则在最坏情况下,冒泡排序的比较次数为

5) 下列叙述中正确的是

A) 循环队列是链式存储结构

B) 循环队列是非线性存储结构

C) 循环队列是线性逻辑结构

D) 循环队列是线性结构

6) 设某棵树的度为3,其中度为3,2,1的结点个数分别为3,0,4。则该树中的叶子结点数为

B) 不可能有这样的树

7) 设有一个栈与一个队列的初始状态均为空。现有一个序列A,B,C,D,E,F,G,H。先分别将序列中的前4个元素依次入栈,后4个元素依次入队;然后分别将栈中的元素依次退栈,再将队列中的元素依次退队。最后得到的序列为

8) 下列叙述中错误的是

A) 具有一个根结点且只有一个叶子结点的数据结构也可能是非线性结构

B) 具有两个以上指针域的链式结构一定属于非线性结构

C) 具有两个根结点的数据结构一定属于非线性结构

D) 具有两个以上叶子结点的数据结构一定属于非线性结构

9) 下列结构中属于线性结构链式存储的是

10) 下列叙述中错误的是

A) 循环链表的存储空间是连续的

B) 循环链表的表头指针与循环链表中最后一个结点的指针均指向表头结点

C) 循环链表实现了空表与非空表运算的统一

D) 循环链表中有一个表头结点

11) 度为3的一棵树共有30个结点,其中度为3,1的结点个数分别为3,4。

则该树中的叶子结点数为

C) 不可能有这样的树

12) 在长度为97的顺序有序表中作二分查找,最多需要的比较次数为

13) 下列结构中属于非线性结构的是

14) 从表中任何一个结点位置出发就可以不重复地访问到表中其他所有结点的链表是

15) 设某棵树的度为3,其中度为3,1,0的结点个数分别为3,4,15。

D) 不可能有这样的树

注意,人家可没说度为2的结点。。。你得设总结点有x个,度为2的有y个,然后列方程去。“树中的结点数 = 所有结点的度数 + 1”,根据这个列方程。

16) 下列叙述中正确的是

A) 线性表中各元素的数据类型可以不同

B) 对线性表只能作插入与删除运算

C) 数组是长度固定的线性表

D) 矩阵是非线性结构

17) 在快速排序法中,每经过一次数据交换(或移动)后

A) 不会产生新的逆序

C) 消除的逆序个数一定比新产生的逆序个数多

D) 只能消除一个逆序

18) 线性表的长度为n。在最坏情况下,比较次数为n-1的算法是

B) 同时寻找最大项与最小项

19) 设某棵树的度为3,其中度为2,1,0的结点个数分别为3,4,15。则该树中总结点数为

A) 不可能有这样的树

20) 下列叙述中错误的是

A) 非空线性结构中只有一个结点没有后件

B) 只有一个根结点和一个叶子结点的结构必定是线性结构

D) 非空线性结构中只有一个结点没有前件

21) 在希尔排序法中,每经过一次数据交换后

B) 消除的逆序个数一定比新产生的逆序个数多

C) 只能消除一个逆序

D) 不会产生新的逆序

22) 下列叙述中正确的是

A) 所有的线性结构都可以采用顺序存储结构

B) 能采用顺序存储的必定是线性结构

C) 循环队列是队列的链式存储结构

D) 具有两个以上指针的链表必定是非线性结构

23) 设表的长度为n。在下列算法中,最坏情况下时间复杂度最高的是

C) 循环链表中寻找最大项

24) 设循环队列的存储空间为Q(1: 50),初始状态为 front=rear=50。经过一系列正常的操作后,front=rear-1。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为

26) 设顺序表的长度为16,对该表进行简单插入排序。在最坏情况下需要的比较次数为

27) 下列叙述中正确的是

A) 算法的复杂度是指算法程序中指令的数量

B) 算法的复杂度是指算法所处理的数据量

C) 算法的复杂度包括时间复杂度与空间复杂度

D) 算法的复杂度是指算法控制结构的复杂程度

28) 设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则按层次输出(从上到下,同一层从左到右)的序列为

29) 设循环队列的存储空间为Q(1: 50),初始状态为 front=rear=50。经过一系列正常的操作后,front-1=rear。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为

注:谁认为29和24是一样的题,自己面壁去!考虑清楚了,回来看条件,-1在等号哪边?那么不仔细还行,考试咋办?

30) 设顺序表的长度为40,对该表进行冒泡排序。在最坏情况下需要的比较次数为

31) 设表的长度为n。在下列结构所对应的算法中,最坏情况下时间复杂度最低的是

D) 循环链表中寻找最大项

32) 设循环队列的存储空间为Q(1: m),初始状态为 front=rear=m。经过一系列正常的操作后,front=1,rear=m。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为

34) 下列结构中为非线性结构的是

35)下列关于栈的叙述中,正确的是

A)栈底元素一定是最后入栈的元素B)栈顶元素一定是最先入栈的元素

C)栈操作遵循先进后出的原则

36)设二叉树共有150个结点,其中度为1的结点有10个,则该二叉树中的叶子结点数为

D)不可能有这样的二叉树

37)下列叙述中正确的是

A)程序执行的效率与数据的存储结构密切相关

B)程序执行的效率只取决于程序的控制结构

C)程序执行的效率只取决于所处理的数据量

38)下列与队列结构有关联的是

A)函数的递归调用B)数组元素的引用C)多重循环的执行D)先到先服务的作业调度

40)一个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是

41)下列叙述中正确的是

A)一个算法的空间复杂度大,则其时间复杂度也必定大

B)一个算法的空间复杂度大,则其时间复杂度必定小

C)一个算法的时间复杂度大,则其空间复杂度必定小

D)算法的时间复杂度与空间复杂度没有直接关系

42)下列叙述中正确的是

A)循环队列中的元素个数随队头指针与队尾指针的变化而动态变化

B)循环队列中的元素个数随队头指针的变化而动态变化

C)循环队列中的元素个数随队尾指针的变化而动态变化

43)一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为

44)对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为

45)下列叙述中正确的是

A)算法的效率只与问题的规模有关,而与数据的存储结构无关

B)算法的时间复杂度是指执行算法所需要的计算工作量

C)数据的逻辑结构与存储结构是一一对应的

D)算法的时间复杂度与空间复杂度一定相关

46)下列叙述中正确的是

A)线性表链式存储结构的存储空间一般要少于顺序存储结构

B)线性表链式存储结构与顺序存储结构的存储空间都是连续的

C)线性表链式存储结构的存储空间可以是连续的,也可以是不连续的

47)某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)

48)对长度为n的线性表作快速排序,在最坏情况下,比较次数为

49)下列叙述中正确的是

A)有且只有一个根结点的数据结构一定是线性结构

B)每一个结点最多有一个前件也最多有一个后件的数据结构一定是线性结构

C)有且只有一个根结点的数据结构一定是非线性结构

D)有且只有一个根结点的数据结构可能是线性结构,也可能是非线性结构

50)下列叙述中错误的是

A)在双向链表中,可以从任何一个结点开始直接遍历到所有结点

B)在循环链表中,可以从任何一个结点开始直接遍历到所有结点

C)在线性单链表中,可以从任何一个结点开始直接遍历到所有结点

D)在二叉链表中,可以从根结点开始遍历到所有结点

51)某二叉树共有13个结点,其中有4个度为1的结点,则叶子结点数为

52)设栈的顺序存储空间为S(1: 50),初始状态为top=0。现经过一系列入栈与退栈运算后,top=20,则当前栈中的元素个数为

53)下列叙述中正确的是

A)栈与队列都只能顺序存储

B)循环队列是队列的顺序存储结构

C)循环链表是循环队列的链式存储结构

54)设某二叉树的前序序列为ABC,中序序列为CBA,则该二叉树的后序序列为

谁说后序就不能和中序一样?都一个分支不就完了么,都左分支。

55)下列排序方法中,最坏情况下时间复杂度最小的是

56)为了对有序表进行对分查找,则要求有序表

C)可以顺序存储也可以链式存储D)任何存储方式

57)设某二叉树的后序序列为CBA,中序序列为ABC,则该二叉树的前序序列为

58)下列叙述中正确的是

A)存储空间不连续的所有链表一定是非线性结构

B)结点中有多个指针域的所有链表一定是非线性结构

C)能顺序存储的数据结构一定是线性结构

D)带链的栈与队列是线性结构

59)算法时间复杂度的度量方法是

A)算法程序的长度B)执行算法所需要的基本运算次数C)执行算法所需要的所有运算次数D)执行算法所需要的时间

60)设循环队列为Q(1: m),初始状态为front=rear=m。现经过一系列的入队与退队运算后,front=rear=1,则该循环队列中的元素个数为

A)快速排序的时间复杂度比冒泡排序的时间复杂度要小

B)快速排序的时间复杂度比希尔排序的时间复杂度要小

C)希尔排序的时间复杂度比直接插入排序的时间复杂度要小

D)快速排序的时间复杂度与希尔排序的时间复杂度是一样的

62)在深度为7的满二叉树中,度为2的结点个数为

63)设栈的顺序存储空间为S(1: m),初始状态为top=m+1。现经过一系列入栈与退栈运算后,top=20,则当前栈中的元素个数为

64)算法空间复杂度的度量方法是

A)算法程序的长度B)算法所处理的数据量C)执行算法所需要的工作单元D)执行算法所需要的存储空间

65)设循环队列为Q(1: m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为

66)下列叙述中正确的是

A)循环队列属于队列的链式存储结构B)双向链表是二叉树的链式存储结构

C)非线性结构只能采用链式存储结构D)有的非线性结构也可以采用顺序存储结构

67)某二叉树中有n个叶子结点,则该二叉树中度为2的结点数为

68)下列叙述中错误的是

A)算法的时间复杂度与算法所处理数据的存储结构有直接关系

B)算法的空间复杂度与算法所处理数据的存储结构有直接关系

C)算法的时间复杂度与空间复杂度有直接关系

69)设栈的顺序存储空间为S(0:49),栈底指针bottom=49,栈顶指针top=30(指向栈顶元素)。则栈中的元素个数为

70)某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的深度(根结点在第1层)为

71)下列叙述中正确的是

A)存储空间连续的数据结构一定是线性结构

B)存储空间不连续的数据结构一定是非线性结构

C)没有根结点的非空数据结构一定是线性结构

D)具有两个根结点的数据结构一定是非线性结构

72)下列叙述中正确的是

A)带链队列的存储空间可以不连续,但队头指针必须大于队尾指针

B)带链队列的存储空间可以不连续,但队头指针必须小于队尾指针

C)带链队列的存储空间可以不连续,且队头指针可以大于也可以小于队尾指针

73)设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=20,rear=15。现要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数为

74)某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的后序序列为

75)下列叙述中正确的是

A)在链表中,如果每个结点有两个指针域,则该链表一定是非线性结构

B)在链表中,如果有两个结点的同一个指针域的值相等,则该链表一定是非线性结构

C)在链表中,如果每个结点有两个指针域,则该链表一定是线性结构

D)在链表中,如果有两个结点的同一个指针域的值相等,则该链表一定是线性结构

76)下列叙述中错误的是

A)在带链队列中,队头指针和队尾指针都是在动态变化的

B)在带链栈中,栈顶指针和栈底指针都是在动态变化的

C)在带链栈中,栈顶指针是在动态变化的,但栈底指针是不变的

77)设数据元素的集合D={ 1,2,3,4,5 },则满足下列关系R的数据结构中为线性结构的是

78)下列叙述中正确的是

A)链表结点中具有两个指针域的数据结构可以是线性结构,也可以是非线性结构

B)线性表的链式存储结构中,每个结点必须有指向前件和指向后件的两个指针

C)线性表的链式存储结构中,每个结点只能有一个指向后件的指针

D)线性表的链式存储结构中,叶子结点的指针只能是空

79)一个栈的初始状态为空,现将元素A,B,C,D,E依次入栈,然后依次退栈三次,并将退栈的三个元素依次入队(原队列为空),最后将队列中的元素全部退出。则元素退队的顺序为

80)某二叉树的中序序列为DCBAEFG,后序序列为DCBGFEA,则该二叉树的深度(根结点在第1层)为

81)下列叙述中正确的是

A)所谓算法就是计算方法

B)程序可以作为算法的一种描述方法

C)算法设计只需考虑得到计算结果D)算法设计可以忽略算法的运算时间

82)下列各序列中不是堆的是

83)深度为5的完全二叉树的结点数不可能是

85)下列叙述中正确的是

A)循环队列是顺序存储结构

B)循环队列是链式存储结构

C)循环队列是非线性结构

D)循环队列的插入运算不会发生溢出现象

86)下列叙述中正确的是

A)所有数据结构必须有根结点

B)所有数据结构必须有终端结点(即叶子结点)

C)只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构

D)没有根结点或没有叶子结点的数据结构一定是非线性结构

87)下列关于算法的描述中错误的是

A)算法强调动态的执行过程,不同于静态的计算公式

B)算法必须能在有限个步骤之后终止

C)算法设计必须考虑算法的复杂度D)算法的优劣取决于运行算法程序的环境

89)线性表的链式存储结构与顺序存储结构相比,链式存储结构的优点有

B)插入与删除运算效率高

D)排序时减少元素的比较次数

90)深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为

91)下列叙述中正确的是

A)所谓有序表是指在顺序存储空间内连续存放的元素序列

B)有序表只能顺序存储在连续的存储空间内

C)有序表可以用链接存储方式存储在不连续的存储空间内

D)任何存储方式的有序表均能采用二分法进行查找

93)下列叙述中正确的是

A)结点中具有两个指针域的链表一定是二叉链表

B)结点中具有两个指针域的链表可以是线性结构,也可以是非线性结构

C)二叉树只能采用链式存储结构

D)循环链表是非线性结构

94)设某二叉树中共有140个结点,其中有40个度为1的结点。则

A)该二叉树中有51个叶子结点

B)该二叉树中有50个叶子结点

C)该二叉树中有51个度为2的结点

D)该二叉树中有50个度为2的结点

E)不可能有这样的二叉树

95)带链的栈与顺序存储的栈相比,其优点是

A)入栈与退栈操作方便

C)入栈操作时不会受栈存储空间的限制而发生溢出

96)某二叉树的前序序列为ABCD,中序序列为DCBA,则后序序列为

97)下列关于算法复杂度叙述正确的是

A)最坏情况下的时间复杂度一定高于平均情况的时间复杂度

B)时间复杂度与所用的计算工具无关

C)对同一个问题,采用不同的算法,则它们的时间复杂度是相同的

D)时间复杂度与采用的算法描述语言有关

98)设有栈S和队列Q,初始状态均为空。首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为

99)下列叙述中正确的是

A)有两个指针域的链表称为二叉链表B)循环链表是循环队列的链式存储结构

C)带链的栈有栈顶指针和栈底指针,因此又称为双重链表

D)结点中具有多个指针域的链表称为多重链表

100)某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为

101)设数据集合为D={ 1,3,5,7,9 },D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是

画图,求解,环路就不行了。1-3-5-9 7 断了线,也不行了。

102)深度为7的二叉树共有127个结点,则下列说法中错误的是

A)该二叉树有一个度为1的结点

B)该二叉树是满二叉树

C)该二叉树是完全二叉树

D)该二叉树有64个叶子结点

谁不会做就认为答案错的?二叉树深度为7,最多几个结点?看玩转的书的公式去,最多127个结点。所以满二叉树,没有度为1的结点。

103)下列叙述中正确的是

A)非线性结构只能采用链式存储结构B)非线性结构只能用多重链表表示

C)所有数据结构既可以采用顺序存储结构,也可以采用链式存储结构

D)有的非线性结构也能采用顺序存储结构

104)某二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为

105)设有序线性表的长度为n,则在有序线性表中进行二分查找,最坏情况下的比较次数为

106)某完全二叉树共有256个结点,则该完全二叉树的深度为

解析:完全二叉树除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。8层二叉树如各层结点全部达到最大值,总结点数为2^8 - 1 = 255。题目中有256个结点,显然前8层都已满,另多一个结点只能位于第9层。即第9层只有一个结点,因此该二叉树深度为9。

108)某二叉树的前序序列为ABCD,中序序列为BDCA,则该二叉树的深度为

109)下列排序方法中,最坏情况下时间复杂度最低的是

A)该循环队列已空B)该循环队列已满C)该循环队列中有1个元素D)该循环队列中有m-1个元素 E)该循环队列已空或已满

112)某二叉树的深度为7,其中有64个叶子结点,则该二叉树中度为1的结点数为

113)堆排序最坏情况下的时间复杂度为

114)在线性表的链式存储结构中,其存储空间一般是不连续的,并且

A)前件结点的存储序号小于后件结点的存储序号

B)前件结点的存储序号大于后件结点的存储序号

C)前件结点的存储序号可以小于也可以大于后件结点的存储序号

115)设数据元素的集合D={ 1,2,3,4,5 },则满足下列关系R的数据结构中为线性结构的是

116)某二叉树中有15个度为1的结点,16个度为2的结点,则该二叉树中总的结点数为

117)下列叙述中正确的是

A)每一个结点有两个指针域的链表一定是非线性结构

B)所有结点的指针域都为非空的链表一定是非线性结构

C)循环链表是循环队列的链式存储结构

D)线性结构的存储结点也可以有多个指针

118)在线性表的顺序存储结构中,其存储空间连续,各个元素所占的字节数

A)相同,元素的存储顺序与逻辑顺序一致

B)相同,但其元素的存储顺序可以与逻辑顺序不一致

C)不同,但元素的存储顺序与逻辑顺序一致

D)不同,且其元素的存储顺序可以与逻辑顺序不一致

119)设循环队列为Q(1: m),其初始状态为front=rear=m。经过一系列入队与退队运算后,

front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为

120)某二叉树中共有935个结点,其中叶子结点有435个,则该二叉树中度为2的结点个数为

121)非空循环链表所表示的数据结构

A)有根结点也有叶子结点

B)没有根结点但有叶子结点

C)有根结点但没有叶子结点

D)没有根结点也没有叶子结点

122)某棵树只有度为3的结点和叶子结点,其中度为3的结点有8个,则该树中的叶子结点数为

123)某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m,rear=m-1,则该循环队列中的元素个数为

124)在排序过程中,每一次数据元素的移动会产生新的逆序的排序方法是

125)某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m-1,rear=m,则该循环队列中的元素个数为

126)某棵树中共有25个结点,且只有度为3的结点和叶子结点,其中叶子结点有7个,则该树中度为3的结点数为

A)不存在这样的树B)7

127)在最坏情况下,二分查找法的时间复杂度为

128)下列序列中不满足堆条件的是

129)下列叙述中正确的是

A)程序可以作为算法的一种表达方式B)算法的有穷性是指算法的规模不能太大

C)算法的复杂度用于衡量算法的控制结构

D)算法的效率与数据的存储结构无关

130)某棵树的度为4,且度为4、3、2、1的结点数分别为1、2、3、4,则该树中的叶子结点数为

131)设二叉树中共有15个结点,其中的结点值互不相同。如果该二叉树的前序序列与中序序列相同,则该二叉树的深度为

D)不存在这样的二叉树

132)设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。现经过一系列入队与退队操作后,front=rear=1,此后又正常地插入了两个元素。最后该队列中的元素个数为

133)设数据元素集合为{A,B,C,D,E,F},下列关系为线性结构的是

134)下列处理中与队列有关的是

A)操作系统中的作业调度

B)执行程序中的过程调用

C)执行程序中的循环控制

135)下列数据结构中为非线性结构的是

136)设二叉树中共有31个结点,其中的结点值互不相同。如果该二叉树的后序序列与中序序列相同,则该二叉树的深度为

137)下列叙述中错误的是

A)数据结构中的数据元素不能是另一数据结构

B)数据结构中的数据元素可以是另一数据结构

C)空数据结构可以是线性结构也可以是非线性结构

D)非空数据结构可以没有根结点

138)为了降低算法的空间复杂度,要求算法尽量采用原地工作(in place)。所谓原地工作是指

A)执行算法时所使用的额外空间固定(即不随算法所处理的数据空间大小的变化而变化)

B)执行算法时所使用的额外空间随算法所处理的数据空间大小的变化而变化

C)执行算法时不使用额外空间

D)执行算法时不使用任何存储空间

139)设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=1。现又要将一个元素进栈,栈顶指针top值变为

A)发生栈满的错误B)2

140)设某二叉树的后序序列与中序序列均为ABCDEFGH,则该二叉树的前序序列为

141)设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=m。现又在栈中退出一个元素后,栈顶指针top值为

142)下列叙述中正确的是

A)数据结构中的数据元素可以是另一种数据结构

B)数据结构中的数据元素只能是另一种线性结构

C)数据结构中的数据元素只能是另一种非线性结构

143)下列叙述中正确的是

A)二分查找法只适用于顺序存储的有序线性表

B)二分查找法适用于任何存储结构的有序线性表

C)二分查找法适用于有序循环链表D)二分查找法适用于有序双向链表

144)设某二叉树的前序序列与中序序列均为ABCDEFGH,则该二叉树的后序序列为

145)设循环队列的存储空间为Q(1:m),初始状态为空。现经过一系列正常的入队与退队操作后,front=m,rear=m-1,此后从该循环队列中删除一个元素,则队列中的元素个数为

解析:m-1 - m 得负的吧?再+容量m。再删一个呢?再-1。

146)某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为

A)不存在这样的二叉树

147)能从任意一个结点开始没有重复地扫描到所有结点的数据结构是

148)若某二叉树中的所有结点值均大于其左子树上的所有结点值,且小于右子树上的所有结点值,则该二叉树遍历序列中有序的是

149)设循环队列的存储空间为Q(1:m),初始状态为空。现经过一系列正常的入队与退队操作后,front=m-1,rear=m,此后再向该循环队列中插入一个元素,则队列中的元素个数为

150)某二叉树共有530个结点,其中度为2的结点有250个,则度为1的结点数为

这里题库只有答案不含解析,我们的“选择题每次一练”栏目会包含解析。

没人让你都背下来!找本靠谱点的讲Office的书(比如玩转的书),掌握知识,举一反三,才是学习的正道。PS: 上面这些题在玩转第2版的书里几乎全部覆盖,都是穿插在知识点讲解中的【随讲随练】,非常好懂。

系统学习二级Office选择题,建议参考教材《玩转Office轻松过二级》(第2版),讲解不仅简洁、废话最少,而且叙述幽默、轻松易懂。各大网店都有。

栈(Stack)在计算机领域是一个被广泛应用的集合,栈是线性集合,访问都严格地限制在一段,叫做顶(top)。 举个例子,栈就想一摞洗干净的盘子,你每次取一个新盘子,都是放在这一摞盘子的最上头,当你往里面添加盘子的时候,也是放在最上面,处在底部的盘子,你可能永远也用不到。 栈的最常见操作,有如下两个:

pop() # 弹出,将栈的最后一个元素弹出

可是使用Python的列表数据结构,来模拟栈的操作,使用 append 来模拟 push ,使用列表的 pop 来模拟栈的 pop ,但是这样做有一个弊端,那就是列表原本自带的操作方法同样能够使用,可能会造成混乱。

栈的实现 下面就通过借助Python的列表,来自定义一个栈类:

 """使用数组实现一个栈"""
 """判断栈是否为空"""
 """当前对象的表现形式, 在终点直接键入对象时会调用"""
 

以上代码实现了一个简单的基于列表的栈。

栈的应用 栈应用的一个很典型的例子,就是检查括号是否匹配。 例如: 每一个开始的 [ 后面,都应该跟着一个位置正确的 ] ,并且每一个 ( 后面,也应该跟着一个位置正确的结束的 ) .

 """栈的应用,检查括号是否平衡"""
 # 遇到结束括号的情况
 # 如果当前栈为空, 不匹配,返回False
 # 如果不满足匹配条件, 则返回False
 # 遍历结束后, 如果结果栈为空, 则代表括号匹配, 栈不为空, 括号不匹配
 

在python中,个人理解为栈可以用列表来代替

其中入栈为(利用append函数)

 

出栈为(利用pop函数)

 
 

以上所述是小编给大家介绍的使用Python实现一个栈判断括号是否平衡,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

专业文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。

专业文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。

阅读已结束,下载本文需要

下载文档到电脑,同时保存到云知识,更方便管理

还剩2页未读, 继续阅读

我要回帖

更多关于 栈的存储空间S(1,60) 的文章

 

随机推荐