1
您的位置: 线上活动  >  在线答题  >  答题题库

数据结构

2024-01-09 15:49:46.226.0.36090

数据结构 在线考试 答题题目
1、(填空题) 假设有n个关键字,它们具有相同的Hash函数值,用线性探测方法解决冲突,把这n个关键字散列到大小为n的地址空间中,共计需要做 ( )次插入和探测操作。


  • 2、(填空题) 关于二分查找算法 在下面的有序表中 ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用二分查找算法,假设各元素的检索概率相同,则平均查找长度为


  • 3、(填空题) 关于顺序查找算法 在下面的线性表中, ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用顺序查找算法,则最大查找长度为


  • 4、(填空题) 关于二分查找算法 在下面的有序表中 ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用二分查找算法,则最大查找长度为()


  • 5、(填空题) 关于顺序查找算法 在下面的线性表中 ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用顺序查找算法,则查找元素 58 时,需要比较()次


  • 6、(填空题) 关于顺序查找算法 在下面的线性表中 ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用顺序查找算法,假设各元素的检索概率相同,则平均查找长度为()


  • 7、(填空题) 关于二分查找算法 在下面的有序表中 ( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 ) 若采用二分查找算法,则查找元素 58 时,需要比较( )次


  • 8、 将M个元素存入用长度为S的数组表示的散列表,则该表的装填因子为M/S。
  • A、正确
  • B、错误


  • 9、 在散列表中,所谓同义词就是被不同散列函数映射到同一地址的两个元素。
  • A、正确
  • B、错误


  • 10、 将 10 个元素散列到 100 000 个单元的哈希表中,一定不会产生冲突。
  • A、正确
  • B、错误


  • 11、 即使把2个元素散列到有100个单元的表中,仍然有可能发生冲突。
  • A、正确
  • B、错误


  • 12、 若用平方探测法解决冲突,则插入新元素时,若散列表容量为质数,插入就一定可以成功。
  • A、正确
  • B、错误


  • 13、 在散列表中,所谓同义词就是具有相同散列地址的两个元素。
  • A、正确
  • B、错误


  • 14、 在散列中,函数“插入”和“查找”具有同样的时间复杂度。
  • A、正确
  • B、错误


  • 15、 在二叉排序树中插入一个新结点,总是插入到叶子结点下面。
  • A、正确
  • B、错误


  • 16、 二叉排序树的后序遍历序列必然是递增的。
  • A、正确
  • B、错误


  • 17、 折半查找法的查找速度一定比顺序查找法快。
  • A、正确
  • B、错误


  • 18、 用向量和单链表表示的有序表均可使用折半查找方法来提高查找速度。
  • A、正确
  • B、错误


  • 19、 折半查找与二分查找树的时间性能在最坏的情况下是相同的。
  • A、正确
  • B、错误


  • 20、 (neuDS)由顺序表和单链表表示的有序表均可使用二分查找法来提高查找速度。
  • A、正确
  • B、错误


  • 21、 已知一棵二叉树的先序遍历结果是ABC,则以下哪个序列是不可能的中序遍历结果:
  • A、ABC
  • B、BAC
  • C、CBA
  • D、CAB


  • 22、 在下述结论中,正确的是:
  • A、①④
  • B、②④
  • C、①②③
  • D、②③④


  • 23、 某二叉树的中序序列和后序序列正好相反,则该二叉树一定是
  • A、空或只有一个结点
  • B、高度等于其结点数
  • C、任一结点无左孩子
  • D、任一结点无右孩子


  • 24、 若将一棵树 T 转化为对应的二叉树 BT,则下列对 BT 的遍历中,其遍历序列与 T 的后根遍历序列相同的是:
  • A、先序遍历
  • B、中序遍历
  • C、后序遍历
  • D、按层遍历


  • 25、 设高为h的二叉树(规定叶子结点的高度为1)只有度为0和2的结点,则此类二叉树的最少结点数和最多结点数分别为:
  • A、2h, 2h−1
  • B、2h−1, 2h−1
  • C、2h−1, 2h−1−1
  • D、2h−1+1, 2h−1


  • 26、 设n、m为一棵二叉树上的两个结点,在中序遍历时,n在m前的条件是
  • A、n在m左方
  • B、n在m右方
  • C、n是m祖先
  • D、n是m子孙


  • 27、 已知一棵完全二叉树的第9层(设根为第1层)有100个叶结点,则该完全二叉树的结点个数最多是:
  • A、311
  • B、823
  • C、1847
  • D、无法确定


  • 28、 具有65个结点的完全二叉树其深度为(根的深度为1):
  • A、8
  • B、7
  • C、6
  • D、5


  • 29、 在一个用数组表示的完全二叉树中,如果根结点下标为1,那么下标为17和19这两个结点的最近公共祖先结点在哪里(数组下标)? (注:两个结点的“公共祖先结点”是指同时都是这两个结点祖先的结点)
  • A、8
  • B、4
  • C、2
  • D、1


  • 30、 已知一棵完全二叉树的第6层(设根为第1层)有8个叶结点,则该完全二叉树的结点个数最多是:
  • A、39
  • B、52
  • C、111
  • D、119


  • 31、 一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()个。
  • A、15
  • B、16
  • C、17
  • D、47


  • 32、 如果二叉树的前序遍历结果是12345,后序遍历结果是32541,那么该二叉树的中序遍历结果是什么?
  • A、23145
  • B、23154
  • C、24135
  • D、无法确定


  • 33、 以二叉链表作为二叉树的存储结构,在具有 n 个结点的二叉链表中(n>0),空链域的个数为 __
  • A、n+1
  • B、n
  • C、n−1
  • D、无法确定


  • 34、 设 T 是非空二叉树,若 T 的后序遍历和中序遍历序列相同,则 T 的形态是 __
  • A、只有一个根结点
  • B、没有度为 1 的结点
  • C、所有结点只有左孩子
  • D、所有结点只有右孩子


  • 35、 设 T 是非空二叉树,若 T 的先序遍历和后序遍历序列相同,则 T 的形态是 __
  • A、只有一个根结点
  • B、没有度为 1 的结点
  • C、所有结点只有左孩子
  • D、所有结点只有右孩子


  • 36、 设 T 是非空二叉树,若 T 的先序遍历和中序遍历序列相同,则 T 的形态是 __
  • A、只有一个根结点
  • B、没有度为 1 的结点
  • C、所有结点只有左孩子
  • D、所有结点只有右孩子


  • 37、 二叉树中第5层(根的层号为1)上的结点个数最多为:
  • A、8
  • B、15
  • C、16
  • D、32


  • 38、 按照二叉树的定义,具有3个结点的二叉树有几种?
  • A、3
  • B、4
  • C、5
  • D、6


  • 39、 任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序
  • A、发生改变
  • B、不发生改变
  • C、不能确定
  • D、以上都不对


  • 40、 如果二叉树的后序遍历结果是FDEBGCA,中序遍历结果是FDBEACG,那么该二叉树的前序遍历结果是什么?
  • A、ABCDEFG
  • B、ABDFEGC
  • C、ABDFECG
  • D、ABDEFCG


  • 41、 具有1102个结点的完全二叉树一定有__个叶子结点。
  • A、79
  • B、551
  • C、1063
  • D、不确定


  • 42、 三叉树中,度为1的结点有5个,度为2的结点3个,度为3的结点2个,问该树含有几个叶结点?
  • A、8
  • B、10
  • C、12
  • D、13


  • 43、 有一个四叉树,度2的结点数为4,度3的结点数为2,度4的结点数为1。问该树的叶结点个数是多少?
  • A、8
  • B、12
  • C、18
  • D、20


  • 44、 在一棵度为4的树T中,若有20个度为4的结点,10个度为3的结点,1个度为2的结点,10个度为1的结点,则树T的叶结点个数是:
  • A、41
  • B、82
  • C、113
  • D、122


  • 45、 在一棵度为 3 的树中,度为 2 的结点个数是 1,度为 0 的结点个数是 6,则度为 3 的结点个数是 __
  • A、2
  • B、3
  • C、4
  • D、无法确定


  • 46、 若一棵二叉树的后序遍历序列是{ 1, 3, 2, 6, 5, 7, 4 },中序遍历序列是{ 1, 2, 3, 4, 5, 6, 7 },则下列哪句是错的?
  • A、这是一棵完全二叉树
  • B、2是1和3的父结点
  • C、这是一棵二叉搜索树
  • D、7是5的父结点


  • 47、 若一棵二叉树的前序遍历序列是{ 4, 2, 1, 3, 6, 5, 7 },中序遍历序列是{ 1, 2, 3, 4, 5, 6, 7 },则下列哪句是错的?
  • A、这是一棵完全二叉树
  • B、所有的奇数都在叶子结点上
  • C、6是3的父结点
  • D、这是一棵二叉搜索树


  • 48、 有一个四叉树,度2的结点数为2,度3的结点数为3,度4的结点数为4。问该树的叶结点个数是多少?
  • A、10
  • B、12
  • C、20
  • D、21


  • 49、 由分别带权为9、2、5、7的四个叶子结点构成一棵哈夫曼树,该树的带权路径长度为:
  • A、23
  • B、37
  • C、44
  • D、46


  • 50、 设一段文本中包含字符{a, b, c, d, e},其出现频率相应为{3, 2, 5, 1, 1}。则经过哈夫曼编码后,文本所占字节数为:
  • A、40
  • B、36
  • C、25
  • D、12


  • 51、 对N(N≥2)个权值均不相同的字符构造哈夫曼树。下列关于该哈夫曼树的叙述中,错误的是:
  • A、树中一定没有度为1的结点
  • B、树中两个权值最小的结点一定是兄弟结点
  • C、树中任一非叶结点的权值一定不小于下一层任一结点的权值
  • D、该树一定是一棵完全二叉树


  • 52、 设树T的度为4,其中度为1、2、3、4的结点个数分别为4、2、1、1。则T中有多少个叶子结点?
  • A、4
  • B、6
  • C、8
  • D、10


  • 53、 树最适合于用来表示
  • A、有序数据元素
  • B、无序数据元素
  • C、元素之间无联系的数据
  • D、元素之间具有分支层次关系的数据


  • 54、 若串S=“software”,则其子串数目是____,其中空串和S串本身这两个字符串也算作S的字串。
  • A、8
  • B、37
  • C、36
  • D、9


  • 55、 串的长度是指
  • A、串中所含不同字母的个数
  • B、串中所含字符的个数
  • C、串中所含不同字符的个数
  • D、串中所含非空格字符的个数


  • 56、 下面关于串的叙述中,哪一个是不正确的
  • A、串是字符的有限序列
  • B、空串是由空格构成的串
  • C、模式匹配是串的一种重要运算
  • D、串既可以采用顺序存储,也可以采用链式存储


  • 57、 (neuDS)串也是一种线性表,只不过( )。
  • A、数据元素均为字符
  • B、数据元素是子串
  • C、数据元素数据类型不受限制
  • D、表长受到限制


  • 58、 (neuDS)设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为( )。
  • A、求子串
  • B、联接
  • C、模式匹配
  • D、求串长


  • 59、 (neuDS)串的长度是指( )。
  • A、串中包含的字符个数
  • B、串中包含的不同字符个数
  • C、串中除空格以外的字符个数
  • D、串中包含的不同字母个数


  • 60、 (neuDS_C++)串是一种特殊的线性表,其特殊性体现在( )。
  • A、可以顺序存储
  • B、数据元素是一个字符
  • C、可以链接存储
  • D、数据元素可以是多个字符


  • 61、 设矩阵A是一个对称矩阵,为了节省存储空间,将其下三角部分按照行优先存放在一维数组B[0..n(n+1)/2-1]中,对于下三角部分的任一元素a_{i,j}(i>=j,i和j从0开始取值),在一维数组B中的下标k的值是____。
  • A、i(i-1)/2+j-1
  • B、i(i+1)/2+j
  • C、i(i+1)/2+j-1
  • D、i(i-1)/2+j


  • 62、 有一个n×n的对称矩阵A,将其下三角部分按行存放在一维数组B中,而A[0][0]存放于B[0]中,则第i行的对角元素A[i][i]存放于B中的( )处。
  • A、(i+3)i/2
  • B、(i+1)i/2
  • C、(2n-i+1)i/2
  • D、(2n-i-1)i/2


  • 63、 对n阶对称矩阵压缩存储时,需要表长为( )的顺序表。
  • A、n/2
  • B、n×n/2
  • C、n(n+1)/2
  • D、n(n-1)/2


  • 64、 对特殊矩阵采用压缩存储的主要目的是( )。
  • A、表达变得简单
  • B、对矩阵元素的存取变得简单
  • C、去掉矩阵中的多余元素
  • D、减少不必要的存储空间


  • 65、 设有数组A[i,j],数组的每个元素长度为3字节,i的值为1 到8 ,j的值为1 到10,数组从内存首地址BA开始顺序存放,当用以行为主存放时,元素A[5,8]的存储首地址为
  • A、BA+141
  • B、BA+180
  • C、BA+222
  • D、BA+225


  • 66、 数组A[0..4,-1..-3,5..7]中含有元素的个数( )。
  • A、55
  • B、45
  • C、36
  • D、16


  • 67、 二维数组A的每个元素是由10个字符组成的串,其行下标i=0,1,…,8,列下标j=1,2,…,10。若A按行先存储,元素A[8,5]的起始地址与当A按列先存储时的元素( )的起始地址相同。设每个字符占一个字节。
  • A、A[8,5]
  • B、A[3,10]
  • C、A[5,8]
  • D、A[0,9]


  • 68、 若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定aij(i<j)的位置k的关系为( )。
  • A、i*(i-1)/2+j
  • B、j*(j-1)/2+i
  • C、i*(i+1)/2+j
  • D、j*(j+1)/2+i


  • 69、 设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地址BA开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为( )。
  • A、BA+141
  • B、BA+180
  • C、BA+222
  • D、BA+225


  • 70、 假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]=( )。
  • A、808
  • B、818
  • C、1010
  • D、1020


  • 71、 设某二维数组a[10][20]采用顺序存储方式,每个数组元素占用1个存储单元,a[0][0]的存储地址为200,a[6][2]的存储地址是226,则该数组 ( ) 。
  • A、只能按列优先存储
  • B、只能按行优先存储
  • C、按行优先存储或按列优先存储均可
  • D、以上都不对


  • 72、 设某二维数组a[10][20]采用顺序存储方式,每个数组元素占用1个存储单元,a[0][0]的存储地址为200,a[6][2]的存储地址是322,则该数组 ( ) 。
  • A、只能按列优先存储
  • B、只能按行优先存储
  • C、按行优先存储或按列优先存储均可
  • D、以上都不对


  • 73、 一个稀疏矩阵采用压缩后,和直接采用二维数组存储相比会失去( ) 特性。
  • A、顺序存储
  • B、随机存取
  • C、输入输出
  • D、以上都不对


  • 74、 (neuDS_C++)二维数组A中,每个元素A的长度为3个字节,行下标i从0到7,列下标j从0到9,从首地址SA开始连续存放在存储器内,该数组按行存放时,数组元素A[7][4]的起始地址为( )。
  • A、SA+141
  • B、SA+144
  • C、SA+222
  • D、SA+225


  • 75、 (neuDS_C++)二维数组A中,每个元素的长度为3个字节,行下标i从0到7,列下标j从0到9,从首地址SA开始连续存放在存储器内,存放该数组至少需要的字节数是( )。
  • A、80
  • B、100
  • C、240
  • D、270


  • 76、 (neuDS)有一个二维数组A[6][8] ,每个数组元素用相邻的6个字节存储,存储器按字节编址,那么这个数组占用的存储空间大小是( )个字节。
  • A、48
  • B、96
  • C、252
  • D、288


  • 77、 (neuDS)设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主进行存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为( )
  • A、13
  • B、33
  • C、18
  • D、40


  • 78、 设广义表L=((a,b,c)),则L的长度和深度分别为( )。
  • A、1和1
  • B、1和3
  • C、1和2
  • D、2和3


  • 79、 广义表((a,b,c,d))的表头、表尾是( )。
  • A、表头:a 表尾:(b,c,d)
  • B、表头: ( ) 表尾:(a,b,c,d)
  • C、表头:(a,b,c,d) 表尾:( )
  • D、表头:(b,c,d) 表尾:(a)


  • 80、 广义表A=(a,b,(c,d),(e,(f,g))),则Head(Tail(Head(Tail(Tail(A)))))的值为( )。
  • A、(g)
  • B、(d)
  • C、c
  • D、d


  • 81、 对广义表,通常采用的存储结构是______。
  • A、数组
  • B、链表
  • C、三元组
  • D、Hash表


  • 82、 (neuDS_C++)广义表L = (a,(a,b),c,d,((i,j),k))的长度和深度为()。
  • A、6和4
  • B、6和3
  • C、5和4
  • D、5和3


  • 83、 一个广义表为 ( a, (b, c), d, (), ((f, g), h) ),则该广义表的长度与深度分别为()。
  • A、4和6
  • B、6和3
  • C、3和5
  • D、5和3


  • 84、 广义表是一种()数据结构。
  • A、非递归的
  • B、递归的
  • C、树型
  • D、图状


  • 85、 广义表 ( (a, b), c, d, e) 的表头和表尾分别是()。
  • A、a和e
  • B、a和 (c, d, e)
  • C、(a, b) 和e
  • D、(a, b) 和 (c, d, e)


  • 86、 广义表是一种多层次的数据结构,其元素可以是单原子也可以是子表。
  • A、正确
  • B、错误


  • 87、 串是一种特殊的线性表,其特殊性体现在数据元素是一个字符。
  • A、正确
  • B、错误


  • 88、 (neuDS_C++)空串与空格串是相同的。
  • A、正确
  • B、错误


  • 89、 (nueDS_C++)如果一个串中的所有字符均在另一串中出现,则说前者是后者的子串。
  • A、 正确
  • B、 错误


  • 90、 下列线索二叉树中(用虚线表示线索),符合后序线索树定义的是:


  • 91、 给定二叉树如下图所示。设N代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。若遍历后的结点序列为3、1、7、5、6、2、4,则其遍历方式是:
  • A、NRL
  • B、RNL
  • C、LRN
  • D、RLN


  • 92、(填空题) 假设二叉树的存储结构为二叉链表,在具有n个结点的二叉链表中(n>0),左孩子指针域和右孩子指针域的个数为( ), 空指针域的个数为( )


  • 93、(填空题) 一棵二叉树的先序序列: abdfcegh,中序序列:bfdagehc。后序遍历序列为( )。


  • 94、(填空题) 已知一棵完全二叉树的第5层(设根为第1层)有8个叶结点,则该完全二叉树的结点个数最多是:()


  • 95、(填空题) 如果二叉树的后序遍历结果是FDEBGCA,中序遍历结果是FDBEACG,那么该二叉树的前序遍历结果是:()


  • 96、(填空题) 在一棵度为4的树T中,10个度为1的结点,1个度为2的结点,10个度为3的结点,20个度为4的结点,则树T的叶结点个数是:()


  • 97、(填空题) 在含有n个结点的树中,边数只能是()


  • 98、(填空题) 已知二叉树的先序遍历序列为 DAGICJBFHE 中序遍历序列为 GACIDFBHJE 则后序遍历序列为()


  • 99、(填空题) 若以{4,5,6,7,8}作为叶子结点的权值构造哈夫曼树,则其带权路径长度是()


  • 100、(填空题) 如果一棵二叉树有20个度为2的结点,则它的叶结点数量为:()个。 (填写半角阿拉伯数字如1234567890,不要添加空格等字符)


  • 101、(填空题) 一棵二叉树的后序遍历序列是DEFBHGKCA,中序遍历序列是DBEFAGHCK,则它的前序遍历序列是 () (填写半角大写字母且不要添加空格,格式如ABCDEFG).


  • 102、(填空题) 一棵二叉树的前序遍历序列是ABDFECGHK,中序遍历序列是DBEFAGHCK,则它的后序遍历序列是 ( ) (填写半角大写字母且不要添加空格,格式如ABCDEFG).


  • 103、 在任意一棵二叉树中,分支结点的数目一定少于叶结点的数目。
  • A、正确
  • B、错误


  • 104、 完全二叉树中,若一个结点没有左孩子,则它必是树叶。
  • A、正确
  • B、错误


  • 105、 在含有n个结点的树中,边数只能是n-1条。
  • A、正确
  • B、错误


  • 106、 具有10个叶结点的二叉树中,有9个度为2的结点。
  • A、正确
  • B、错误


  • 107、 二叉树就是度为 2 的树。
  • A、正确
  • B、错误


  • 108、 设只包含根结点的二叉树高度为0,则高度为k的二叉树最小结点数为k+1。
  • A、正确
  • B、错误


  • 109、 二叉树通常有顺序存储结构和链式存储结构。
  • A、正确
  • B、错误


  • 110、 存在一棵总共有2016个结点的二叉树,其中有16个结点只有一个孩子。
  • A、正确
  • B、错误


  • 111、 对N(≥2)个权值均不相同的字符构造哈夫曼树,则树中任一非叶结点的权值一定不小于下一层任一结点的权值。
  • A、正确
  • B、错误


  • 112、 对于一个有N个结点、K条边的森林,不能确定它共有几棵树。
  • A、正确
  • B、错误


  • 113、 一棵有124个结点的完全二叉树,其叶结点个数是确定的。
  • A、正确
  • B、错误


  • 114、 将一棵树转成二叉树,根结点没有左子树。
  • A、正确
  • B、错误


  • 115、 二叉树可以用二叉链表存储,树无法用二叉链表存储。
  • A、正确
  • B、错误


  • 116、 树的后根序遍历序列等同于它所对应二叉树的中序遍历序列。
  • A、正确
  • B、错误


  • 117、 将一棵完全二叉树存于数组中(根结点的下标为1)。则下标为23和24的两个结点是兄弟。
  • A、正确
  • B、错误


  • 118、 若一个结点是某二叉树的中序遍历序列的最后一个结点,则它必是该树的前序遍历序列中的最后一个结点。
  • A、正确
  • B、错误


  • 119、 若A和B都是一棵二叉树的叶子结点,则存在这样的二叉树,其前序遍历序列为...A...B...,而中序遍历序列为...B...A...。
  • A、正确
  • B、错误


  • 120、 某二叉树的后序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无左孩子。
  • A、正确
  • B、错误


  • 121、 某二叉树的前序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无右孩子。
  • A、正确
  • B、错误


  • 122、 某二叉树的后序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无右孩子。
  • A、正确
  • B、错误


  • 123、 某二叉树的前序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无左孩子。
  • A、正确
  • B、错误


  • 124、(填空题) 设栈S和队列Q的初始状态均为空,元素{1, 2, 3, 4, 5, 6, 7}依次进入栈S。若每个元素出栈后立即进入队列Q,且7个元素出队的顺序是{2, 6, 5, 4, 7, 3, 1},则栈S的容量至少是:()


  • 125、(填空题) 栈的运算遵循 () 的原则。


  • 126、(填空题) 以下运算实现在链栈上的退栈,请在空白处用请适当句子予以填充。 int pop(LStackTp &ls,DataType &x){ LStackTp p; if(ls!=NULL){ p=ls; x=(); ls=ls->next; ( ); return(1); }else return(0); }


  • 127、(填空题) 设栈S和队列Q的初始状态都为空,元素a,b,c,d,e,f依次通过栈S,一个元素出栈后即进入队列,若6个元素出队序列是bedfca,则栈S的容量至少应有能够存放()个元素的空间。


  • 128、(填空题) 为了解决队列的假溢出现象,应采用 ()队列


  • 129、(填空题) ( ) 又称为先进先出的线性表。


  • 130、(填空题) 2. 以下运算实现在链栈上的初始化,请在空白处用请适当句子予以填充。 typedef struct Node{ DataType data; struct Node *next; }StackNode,*LStackTp; void InitStack(LStackTp &ls){( )};


  • 131、(填空题) 1. 后缀式(postfix expression,也叫逆波兰式, reverse Polish notation)1 2 3 4 5 6 - + / * +的值是:( ) (如果结果不是整数,四舍五入保留一位小数。如结果为正数,不需要添加+号。请使用半角阿拉伯数字、小数点和负号如-012345.6789填写,不要添加空格等其它字符)


  • 132、 已知循环队列的存储空间为数组A[21],front指向队头元素的前一个位置,rear指向队尾元素,假设当前front和rear的值分别为8和3,则该队列的长度为( )。
  • A、5
  • B、6
  • C、16
  • D、17


  • 133、 用链接方式存储的队列,在进行删除运算时( )。
  • A、仅修改头指针
  • B、仅修改尾指针
  • C、头、尾指针都要修改
  • D、头、尾指针可能都要修改


  • 134、 循环队列存储在数组A[0..n-1]中,其头尾指针分别为f和r,头指针f总是指向队头元素,尾指针r总是指向队尾元素的下一个位置,假设队列不空,元素出队时头尾指针的操作为( )。
  • A、f=(f+1)%n
  • B、f=f+1
  • C、r=(r+1)%n
  • D、f=(f+1)%(n-1)


  • 135、 循环队列存储在数组A[0..m]中,其头尾指针分别为front和rear,头指针front总是指向队头元素,尾指针rear总是指向队尾元素的下一个位置,则入队时的操作为( )。
  • A、rear=rear+1
  • B、rear=(rear+1)%(m-1)
  • C、rear=(rear+1)%m
  • D、rear=(rear+1)%(m+1)


  • 136、 依次在初始为空的队列中插入元素a,b,c,d以后,紧接着做了两次删除操作,此时的队头元素是( )。
  • A、a
  • B、b
  • C、c
  • D、d


  • 137、 (neuDS)在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的长度是( )。
  • A、rear-front
  • C、(rear-front+maxSize)%maxSize
  • D、(rear-front+1)%maxSize


  • 138、 (neuDS)在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判满条件是( )。
  • A、front==rear
  • B、front!=rear
  • C、front==rear+1
  • D、front==(rear+1)% maxSize


  • 139、 (neuDS)在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判空条件是( )。
  • A、front==rear
  • B、front!=rear
  • C、front==rear+1
  • D、front==(rear+1)% maxSize


  • 140、 (neuDS)在队列中存取数据元素的原则是( )。
  • A、先进先出
  • B、先进后出
  • C、后进先出
  • D、没有限制


  • 141、 用单链表表示的链队的队头在链表的()位置。
  • A、链头
  • B、链尾
  • C、链中
  • D、均可以


  • 142、 设一数列的顺序为1,2,3,4,5,6,通过队列操作可以得到( )的输出序列。
  • A、3,2,5,6,4,1
  • B、1,2,3,4,5,6
  • C、6,5,4,3,2,1
  • D、4,5,3,2,6,1


  • 143、 在一个不带头结点的非空链式队列中,假设f和r分别为队头和队尾指针,则插入s所指的结点运算是( )。
  • A、f->next=s; f=s;
  • B、r->next=s; r=s;
  • C、s->next=s; r=s;
  • D、s->next=f; f=s;


  • 144、 若用大小为6的数组来实现循环队列,且当前front和rear的值分别为0和4。当从队列中删除两个元素,再加入两个元素后,front和rear的值分别为多少?
  • A、2和0
  • B、2和2
  • C、2和4
  • D、2和6


  • 145、 若已知一队列用单向链表表示,该单向链表的当前状态(含3个对象)是:1->2->3,其中x->y表示x的下一节点是y。此时,如果将对象4入队,然后队列头的对象出队,则单向链表的状态是:
  • A、1->2->3
  • B、2->3->4
  • C、4->1->2
  • D、答案不唯一


  • 146、 为解决计算机主机与打印机之间速度不匹配问题,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是?
  • A、堆栈
  • B、队列
  • C、树
  • D、图


  • 147、 若一个栈以向量V[1..n]存储,初始栈顶指针top设为n+1,则元素x进栈的正确操作是( )。
  • A、top++; V[top]=x;
  • B、V[top]=x; top++;
  • C、top--; V[top]=x;
  • D、V[top]=x; top--;


  • 148、 对空栈 S 进行 Push 和 Pop 操作,入栈序列为 a, b, c, d, e,经过 Push, Push, Pop, Push, Pop, Push, Push, Pop 操作后,得到的出栈序列是:
  • A、b, a, c
  • B、b, a, e
  • C、b, c, a
  • D、b, c, e


  • 149、 设1、2、…、n–1、n共n个数按顺序入栈,若第一个出栈的元素是n,则第三个出栈的元素是:
  • A、3
  • B、n-2
  • C、n-3
  • D、任何元素均可能


  • 150、 假设元素按照e1,e2,e3,e4,e5,e6的次序进栈,出栈序列为e2,e4,e3,e6,e5,e1,则栈的容量至少是()。
  • A、6
  • B、4
  • C、3
  • D、2


  • 151、 已知入栈序列为1 2 3 4 5 6 7。出栈操作可以随意进行(只要栈不为空),且栈最多可容纳3个元素。则下列合法的出栈序列是
  • A、4 2 1 3 7 5 6
  • B、3 2 1 5 4 6 7
  • C、4 3 7 6 5 2 1
  • D、3 5 4 2 1 6 7


  • 152、 栈可用于( )。
  • A、递归调用
  • B、子程序调用
  • C、表达式求值
  • D、A、B、C


  • 153、 栈的插入和删除操作在( )进行。
  • A、栈顶
  • B、栈底
  • C、任意位置
  • D、指定位置


  • 154、 若让元素1,2,3,4,5依次进栈,则出栈次序不可能出现在( )种情况。
  • A、5,4,3,2,1
  • B、2,1,5,4,3
  • C、4,3,1,2,5
  • D、2,3,5,4,1


  • 155、 (neuDS)在栈中存取数据的原则是( )。
  • A、先进先出
  • B、先进后出
  • C、后进后出
  • D、没有限制


  • 156、 (neuDS)在顺序栈中,若栈顶指针top指向栈顶元素的下一个存储单元,且顺序栈的最大容量是maxSize。则顺序栈的判满的条件是( )。
  • A、top==0
  • B、top==-1
  • C、top==maxSize
  • D、top==maxSize-1


  • 157、 (neuDS)在顺序栈中,若栈顶指针top指向栈顶元素的下一个存储单元,且顺序栈的最大容量是maxSize,则顺序栈的判空条件是( )。
  • A、top==0
  • B、top==-1
  • C、top==maxSize
  • D、top==maxSize-1


  • 158、 (neuDS)在链栈中,进行出栈操作时( )。
  • A、需要判断栈是否满
  • B、需要判断栈是否为空
  • C、需要判断栈元素的类型
  • D、无需对栈作任何操作


  • 159、 若已知一个栈的进栈序列是1,2,3,...,n,其输出序列为p1,p2,p3,...,pn,若p1 = 3,则p2为()。
  • A、可能是2
  • B、一定是2
  • C、可能是1
  • D、一定是1


  • 160、 链式栈与顺序栈相比,一个比较明显的优点是( )。
  • A、插入操作更加方便
  • B、通常不会出现栈满的情况
  • C、不会出现栈空的情况
  • D、删除操作更加方便


  • 161、 令P代表入栈,O代表出栈。则将一个字符串3*a+b/c变为3 a * b c / +的堆栈操作序列是哪个?(例如将ABC变成BCA的操作序列是PPOPOO。)
  • A、PPPOOOPPOPPOOO
  • B、POPOPOPPOPPOOO
  • C、POPPOOPPOPOOPO
  • D、POPPOOPPOPPOOO


  • 162、 若一个栈的入栈序列为1、2、3、…、N,其输出序列为p1、p2、p3、…、pN。若p1=N,则pi为:
  • A、i
  • B、n−i
  • C、n−i+1
  • D、不确定


  • 163、(判断题) 若采用“队首指针和队尾指针的值相等”作为环形队列为空的标志,则在设置一个空队时只需将队首指针和队尾指针赋同一个值,不管什么值都可以。
  • A、正确
  • B、错误


  • 164、(判断题) 环形队列中有多少个元素可以根据队首指针和队尾指针的值来计算。
  • A、正确
  • B、错误


  • 165、(判断题) n个元素进队的顺序和出队的顺序总是一致的。
  • A、正确
  • B、错误


  • 166、(判断题) 循环队列执行出队操作时会引起大量元素的移动。
  • A、正确
  • B、错误


  • 167、(判断题) 循环队列也存在着空间溢出问题。
  • A、正确
  • B、错误


  • 168、(判断题) 在用数组表示的循环队列中,front值一定小于等于rear值。
  • A、正确
  • B、错误


  • 169、(判断题) 对顺序栈进行进栈、出栈操作不涉及元素的前、后移动问题。
  • A、正确
  • B、错误


  • 170、(判断题) 栈是一种对进栈、出栈操作总次数做了限制的线性表。
  • A、正确
  • B、错误


  • 171、(判断题) 栈顶元素和栈底元素有可能是冋一个元素。
  • A、正确
  • B、错误


  • 172、(判断题) 在n个元素连续进栈以后,它们的出栈顺序和进栈顺序一定正好相反。
  • A、正确
  • B、错误


  • 173、(判断题) 顺序栈中元素值的大小是有序的。
  • A、正确
  • B、错误


  • 174、(判断题) 栈底元素是不能删除的元素。
  • A、正确
  • B、错误


  • 175、(判断题) 栈是插入和删除只能在一端进行的线性表;队列是插入在一端进行,删除在另一端进行的线性表。
  • A、正确
  • B、错误


  • 176、(判断题) 栈和队列的存储方式,既可以是顺序方式,也可以是链式方式。
  • A、正确
  • B、错误


  • 177、(判断题) 若一个栈的输入序列为{1, 2, 3, 4, 5},则不可能得到{3, 4, 1, 2, 5}这样的出栈序列。
  • A、正确
  • B、错误


  • 178、(判断题) 通过对堆栈S操作:Push(S,1), Push(S,2), Pop(S), Push(S,3), Pop(S), Pop(S)。输出的序列为:123。
  • A、正确
  • B、错误


  • 179、(填空题) 某个含有n个元素的线性表可以采用单链表或双链表存储结构,但要求快速删除指定位置的结点,应采用()


  • 180、(填空题) 有一个含有n个元素的线性表,可以采用单链表或双链表存储,其主要的操作是插入和删除第一个元素,最好选择()作为存储结构。


  • 181、(填空题) 有一个长度为n的循环单链表L,在p所指的结点之前插入一个新结点,其时间复杂度为()


  • 182、(填空题) 对于一个具有n(n≥1)个结点的单链表,插入一个尾结点的时间复杂度是()


  • 183、(填空题) 链接存储的特点是利用()来表示数据元素之间的逻辑关系。


  • 184、(填空题) 在有n个元素的顺序表中的任意位置插入一个元素所需移动元素的平均次数为()


  • 185、(填空题) 在有n个元素的顺序表中删除任意一个元素所需移动元素的平均次数为()


  • 186、(填空题) 在长度为n的循环单链表L中查找值最大的结点,其时间复杂度为()


  • 187、(填空题) 在长度为n的顺序表L中将所有值为x的元素替换成y,该算法的时间复杂度为()


  • 188、(填空题) 假设顺序表第 1 个元素的内存地址是 100,每个元素占用 2 字节内存空间,则第 5 个元素的内存地址是()


  • 189、 设顺序表L中有n个数据元素,则删除该表中第i个数据元素需要移动移动 个元素。
  • A、n-1-i
  • B、n+L-i
  • C、n-i
  • D、I


  • 190、 在一个长度为n的顺序表中,向第i个元素(1≤i≤n+1)位置插入一个新元素时需要从后向前移动多少个元素。
  • A、n-i
  • B、n-i+1
  • C、n-i-1
  • D、I


  • 191、 采用顺序表存储结构存储的线性表,其首地址为100,每个元素的长度为2,则第5个元素的地址为。
  • A、110
  • B、108
  • C、100
  • D、120


  • 192、 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
  • A、顺序表
  • B、双链表
  • C、带头结点的双循环链表
  • D、单循环链表


  • 193、 以下说法错误的是( )。
  • A、求表长、定位这两种运算在采用顺序存储结构时实现的效率不比采用链式存储结构时实现的效率低
  • B、顺序存储的线性表可以随机存取
  • C、由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活
  • D、线性表的链式存储结构优于顺序存储结构


  • 194、 若线性表最常用的操作是存取第i个元素及其前驱的值,则采用( )存储方式节省时间。
  • A、单链表
  • B、双向链表
  • C、单循环链表
  • D、顺序表


  • 195、 若长度为n的非空线性表采用顺序存储结构,在表的第i个位置插入一个数据元素的合法值应该是( )。
  • A、1≤i≤n
  • B、1≤i≤n+1
  • C、0≤i≤n-1
  • D、0≤i≤n


  • 196、 顺序存储表示中数据元素之间的逻辑关系是由( )表示的。
  • A、指针
  • B、逻辑顺序
  • C、存储位置
  • D、问题上下文


  • 197、 (neuDS)线性表的顺序存储结构是一种( )
  • A、随机存取的存储结构
  • B、顺序存取的存储结构
  • C、索引存取的存储结构
  • D、散列存取的存储结构


  • 198、 某线性表采用顺序存储结构,每个元素占4个存储单元,首地址为100,则第12个元素的存储地址为()。
  • A、144
  • B、145
  • C、147
  • D、148


  • 199、 在N个结点的顺序表中,算法的时间复杂度为O(1)的操作是:
  • A、访问第i个结点(1≤i≤N)和求第i个结点的直接前驱(2≤i≤N)
  • B、在第i个结点后插入一个新结点(1≤i≤N)
  • C、删除第i个结点(1≤i≤N)
  • D、将N个结点从小到大排序


  • 200、 对于顺序存储的长度为N的线性表,访问结点和增加结点的时间复杂度为:
  • A、O(1), O(1)
  • B、O(1), O(N)
  • C、O(N), O(1)
  • D、O(N), O(N)


  • 201、 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动的元素个数为( )
  • A、8
  • B、63.5
  • C、63
  • D、7


  • 202、 在单链表L中,若删除p所指结点(非尾结点)的直接后继结点,修改指针的语句应为( )。
  • A、p=p->next->next;
  • B、p=p->next; p->next=p->next->next;
  • C、p->next=p->next;
  • D、p->next=p->next->next;


  • 203、 在具有N个结点的单链表中,实现下列哪个操作,其算法的时间复杂度是O(N)?____。
  • A、删除开始结点
  • B、遍历链表和求链表的第i个结点
  • C、删除地址为p的结点的后继结点
  • D、在地址为p的结点之后插入一个结点


  • 204、 线性表的链式存储结构与顺序存储结构相比,其优点是()。
  • A、所有的操作算法实现简单。
  • B、便于随机存取。
  • C、便于插入与删除。
  • D、便于节省存储空间。


  • 205、 在循环双链表的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->right->next = s;
  • D、s->next = p; s->prior = p->prior; p->prior->next = s; p->prior = s;


  • 206、 在单链表中,要删除某一指定结点,必须先找到该结点的()。
  • A、直接前驱
  • B、自身位置
  • C、直接后继
  • D、直接后继的后继


  • 207、 已知表头元素为c的单链表在内存中的存储状态如下表所示: 现将f存放于1014H处,并插入到单链表中,若f在逻辑上位于a和e之间,则a、e、f的“链接地址”依次是:
  • A、1010H, 1014H, 1004H
  • B、1010H, 1004H, 1014H
  • C、1014H, 1010H, 1004H
  • D、1014H, 1004H, 1010H


  • 208、 单链表的存储密度( )。
  • A、大于1
  • B、等于1
  • C、小于1
  • D、不能确定


  • 209、 链接存储的存储结构所占存储空间( )。
  • A、分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
  • B、只有一部分,存放结点值
  • C、只有一部分,存储表示结点间关系的指针
  • D、分两部分,一部分存放结点值,另一部分存放结点所占单元数


  • 210、 对于一非空的循环单链表,h和p分别指向链表的头、尾结点,则有:
  • A、p->next == h
  • B、p->next == NULL
  • C、p == NULL
  • D、p == h


  • 211、 在单链表中,若p所指的结点不是最后结点,在p之后插入s所指结点,则执行
  • A、s->next=p; p->next=s;
  • B、s->next=p->next; p=s;
  • C、s->next=p->next; p->next=s;
  • D、p->next=s; s->next=p;


  • 212、 线性表L在什么情况下适用于使用链式结构实现?
  • A、需不断对L进行删除插入
  • B、需经常修改L中的结点值
  • C、L中含有大量的结点
  • D、L中结点结构复杂


  • 213、 线性表若采用链式存储结构时,要求内存中可用存储单元的地址
  • A、必须是连续的
  • B、连续或不连续都可以
  • C、部分地址必须是连续的
  • D、一定是不连续的


  • 214、 循环链表可以做到从任一结点出发,访问到链表的全部结点。
  • A、对
  • B、错


  • 215、 链表中逻辑上相邻的元素,其物理位置也一定相邻。
  • A、对
  • B、错


  • 216、 在一个设有头指针和尾指针的单链表中,执行删除该单链表中最后一个元素的操作与链表的长度无关。
  • A、对
  • B、错


  • 217、 链式存储的优点是插入、删除元素时不会引起后续元素的移动,缺点是只能顺序访问各元素。
  • A、对
  • B、错


  • 218、 带头结点的单循环链表中,任一结点的后继结点的指针域均不空。
  • A、对
  • B、错


  • 219、 在具有头结点的链式存储结构中,头指针指向链表中的第一个元素结点。
  • A、对
  • B、错


  • 220、 线性表的顺序存储表示优于链式存储表示。
  • A、对
  • B、错


  • 221、 链表的每个结点都恰好有一个指针。
  • A、对
  • B、错


  • 222、 线性表采用链式存储表示时,所有结点之间的存储单元地址可以连续也可以不连续。
  • A、对
  • B、错


  • 223、 (neuDS)在线性表的顺序存储结构中可实现快速的随机存取,而在链式存储结构中则只能进行顺序存取。
  • A、对
  • B、错


  • 224、 若用链表来表示一个线性表,则表中元素的地址一定是连续的。
  • A、对
  • B、错


  • 225、 顺序存储结构的主要缺点是不利于插入或删除操作。
  • A、对
  • B、错


  • 226、 顺序存储方式只能用于存储线性结构。
  • A、对
  • B、错


  • 227、 顺序存储的线性表可以随机存取。
  • A、对
  • B、错


  • 228、 在顺序表中取出第i个元素所花费的时间与i成正比。
  • A、对
  • B、错


  • 229、 在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该元素的位置有关。
  • A、对
  • B、错


  • 230、 (neuDS)在顺序表上进行插入、删除操作时需要移动元素的个数与待插入或待删除元素的位置无关。
  • A、对
  • B、错


  • 231、 (neuDS)所谓随机存取,就是通过首地址和元素的位序号值可以在O(1)的时间内找到指定的元素。。
  • A、对
  • B、错


  • 232、 (neuDS)在顺序表中逻辑上相邻的元素,其对应的物理位置也是相邻的。
  • A、对
  • B、错


  • 233、 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用顺序表存储最节省时间。
  • A、对
  • B、错


  • 234、(判断题) 算法可以没有输入,但是必须有输出。
  • A、正确
  • B、错误


  • 235、(判断题) 对于某些算法,随着问题规模的扩大,所花的时间不一定单调增加。
  • A、正确
  • B、错误


  • 236、(判断题) 在任何情况下,时间复杂度为O(n 2 ) 的算法比时间复杂度为O(n*logn)的算法所花费的时间都长。
  • A、正确
  • B、错误


  • 237、(判断题) 算法分析的两个主要方面是时间复杂度和空间复杂度的分析。
  • A、正确
  • B、错误


  • 238、(判断题) 关于《数据结构》学科 《数据结构》是一门研究数值计算的程序设计问题的学科。
  • A、正确
  • B、错误


  • 239、(判断题) 数据结构包括数据对象集以及它们的逻辑结构和物理结构,还包括与数据对象相关联的操作集,以及实现这些操作的高效的算法。
  • A、正确
  • B、错误


  • 240、(判断题) 算法的优劣与算法描述语言无关,但与所用计算机有关。
  • A、正确
  • B、错误


  • 241、(判断题) 算法和程序没有区别,在数据结构中二者是通用的。
  • A、正确
  • B、错误


  • 242、(判断题) 算法独立于具体的程序设计语言,与具体的计算机无关。
  • A、正确
  • B、错误


  • 243、(判断题) 抽象数据类型与计算机内部表示和实现无关。
  • A、正确
  • B、错误


  • 244、(判断题) 数据结构的抽象操作的定义与具体实现有关。
  • A、正确
  • B、错误


  • 245、(判断题) 数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的存储结构。
  • A、正确
  • B、错误


  • 246、(判断题) 数据元素可以由类型互不相同的数据项构成。
  • A、正确
  • B、错误


  • 247、(判断题) 数据的逻辑结构与数据元素本身的内容和形式无关。
  • A、正确
  • B、错误


  • 248、(判断题) 数据结构概念包括数据之间的逻辑结构、数据在计算机中的存储方式和数据的运算三个方面。
  • A、正确
  • B、错误


  • 249、(判断题) 数据的逻辑结构是指数据的各数据项之间的逻辑关系。
  • A、正确
  • B、错误


  • 250、(判断题) 数据元素是数据的最小单位。
  • A、正确
  • B、错误


  • 251、(判断题) 数据项是数据的最小单位。
  • A、正确
  • B、错误


  • 252、(填空题) ()是性质相同的数据元素的集合,是 ()的一个子集。


  • 253、(填空题) ()是数据的基本单位,()是数据的不可分割最小单位。其中:前者在计算机中通常作为一个整体进行考虑和处理,它可以由一个或多个后者组成。


  • 254、(填空题) 存储结构的分类


  • 255、(填空题) 逻辑结构的分类


  • 256、(填空题) 数据结构的数学定义为一个二元组:DS=(D,R)


  • 257、(填空题) 关于抽象数据类型


  • 258、(填空题) 算法所需执行时间的量度称为(),算法所需存储空间的量度称为 ()。


  • 259、(填空题) 数据结构中评价算法的两个重要指标是()和()


  • 260、(填空题) ()是一组的值的集合,以及定义在这个值的集合之上的一组操作的总称。


  • 261、(填空题) ( ) 一般指由用户定义的、表示应用问题的数学模型,以及定义在该模型上的一组操作的总称。


  • 262、(填空题) () 是指数据元素之间的关系。


  • 263、(填空题) () 是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。


  • 264、(填空题) () 是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作


  • 265、 设 n 是描述问题规模的非负整数,下列程序段的时间复杂度是: x = 0; while ( n >= (x+1)*(x+1) ) x = x+1;
  • A、O(logn)
  • B、O(n1/2)
  • C、O(n)
  • D、O(n2)


  • 266、 时间复杂度分析 下面算法的时间复杂度为 ▁▁▁▁▁。 int foo(int n) { return n * (n + 1) / 2; }
  • A、O(n)
  • B、O(n2)
  • C、O(n)
  • D、O(1)


  • 267、 下面代码段的时间复杂度是()。 x=0; for( i=1; i<n; i++ ) for ( j=1; j<=n-i; j++ ) x++;
  • A、O(n)
  • B、O(n2)
  • C、O(n3)
  • D、O(2n)


  • 268、 下面代码段的时间复杂度是()。 i=1; while( i<=n ) i=i*3;
  • A、O(n)
  • B、O(n2)
  • C、O(1)
  • D、O(log3n)


  • 269、 下面代码段的时间复杂度是()。 s=0; for ( i=0; i<n; i++ ) for( j=0; j<n; j++ ) s+=B[i][j]; sum=s;
  • A、O(1)
  • B、O(log2n)
  • C、O(n)
  • D、O(n2)


  • 270、 下面代码段的时间复杂度是()。 for ( i=0; i<n; i++ ) for ( j=0; j<m; j++ ) a[i][j]=0;
  • A、O(1)
  • B、O(mn)
  • C、O(m2)
  • D、O(n2)


  • 271、 基本术语
  • A、二进制位
  • B、数据元素
  • C、数据项
  • D、数据对象


  • 272、 以下与数据的存储结构无关的术语是( )。
  • A、循环队列
  • B、链表
  • C、哈希表
  • D、栈


  • 273、 可以用( )定义一个完整的数据结构。
  • A、数据元素
  • B、数据对象
  • C、数据关系
  • D、抽象数据类型


  • 274、 下列属于非线性数据结构的是( )。
  • A、线性表
  • B、图
  • C、栈
  • D、队列


  • 275、 下列属于线性数据结构的是( )。
  • A、队列
  • B、树
  • C、图
  • D、二叉树


  • 276、 下列属于线性数据结构的是( )。
  • A、栈
  • B、树
  • C、图
  • D、集合


  • 277、 从逻辑上可将数据结构分为( )。
  • A、动态结构和静态结构
  • B、紧凑结构和非紧凑结构
  • C、内部结构和外部结构
  • D、线性结构和非线性结构


  • 278、 以下关于数据结构的说法中正确的是( )。
  • A、数据结构的逻辑结构独立于其存储结构
  • B、数据结构的存储结构独立于该数据结构的逻辑结构
  • C、数据结构的逻辑结构唯一地决定了该数据结构的存储结构
  • D、数据结构仅由其逻辑结构和存储结构决定


  • 279、 计算机所处理的数据一般具有某种关系,这是指( )。
  • A、数据与数据之间存在的某种关系
  • B、数据元素与数据元素之间存在的某种关系
  • C、元素内数据项与数据项之间存在的某种关系
  • D、数据文件内记录与记录之间存在的某种关系


  • 280、 在 Data_Structure = (D,R)中,D 是( )的有限集合。
  • A、数据元素
  • B、算法
  • C、数据操作
  • D、数据对象


  • 281、 被计算机加工的数据元素不是孤立的,它们彼此之间一般存在某种关系,通常把数据元素之间的这种关系称为
  • A、规则
  • B、结构
  • C、集合
  • D、运算


  • 282、 计算机算法必须具备输入、输出和()等五个特性。
  • A、可行性、可移植性和可扩充性
  • B、可行性、确定性和有穷性
  • C、确定性、有穷性和稳定性
  • D、易读性、稳定性和安全性


  • 283、 算法分析的两个主要方面是()。
  • A、空间复杂性和时间复杂性
  • B、正确性和简明性
  • C、可读性和文档性
  • D、数据复杂性和程序复杂性


  • 284、 要判断一个整数N(>10)是否素数,我们需要检查3到N之间是否存在奇数可以整除N。则这个算法的时间复杂度是:
  • A、O(N/2)
  • B、O(N)
  • C、O(NlogN)
  • D、O(0.5logN)


  • 285、 通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着( )。
  • A、数据在同一范围内取值
  • B、不仅数据元素所包含的数据项的个数要相同,而且对应数据项的类型要一致
  • C、每个数据元素都一样
  • D、数据元素所包含的数据项的个数要相等


  • 286、 与数据元素本身的形式、内容、相对位置、个数无关的是数据的( )。
  • A、存储结构
  • B、存储实现
  • C、逻辑结构
  • D、运算实现


  • 287、 给定N×N的二维数组A,则在不改变数组的前提下,查找最大元素的时间复杂度是:
  • A、O(N2)
  • B、O(NlogN)
  • C、O(N)
  • D、O(N2logN)


  • 微信扫一扫 在线答题 在线出卷 随机出题小程序 闯关答题软件 出题答题小程序