全国二级理论——1.2数据结构与算法 本套试题共50题。 1. 班级:格式如“19计应31”2. 学号:10位数完整格式3. 姓名:4. 为了降低算法的空间复杂度,要求算法尽量采用原地工作(in place)。所谓原地工作是指______。A. 执行算法时不使用任何存储空间B. 执行算法时所使用的额外空间随算法所处理的数据空间大小的变化而变化C. 执行算法时不使用额外空间D. 执行算法时所使用的额外空间固定(即不随算法所处理的数据空间大小的变化而变化)5. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。堆排序在最坏的情况下,其时间复杂度为O(nlog2n)。]6. 下列对队列的叙述正确的是______。A. 队列属于非线性表B. 队列按"先进后出"原则组织数据C. 队列在队尾删除数据D. 队列按"先进先出"原则组织数据7. [(1)冒泡排序法:是一种最简单的交换类排序法,它是通过相邻数据元素的交换逐步将线性表变成有序。假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要比较的次数为n(n-1)/2次。因此冒泡排序总的时间复杂度为O(n2)。]8. 下列叙述中正确的是______。A. 算法的复杂度用于衡量算法的控制结构B. 算法的有穷性是指算法的规模不能太大C. 程序可以作为算法的一种表达方式D. 算法的效率与数据的存储结构无关9. 下列关于栈叙述正确的是______。A. 栈顶元素最先能被删除B. 栈顶元素最后才能被删除C. 栈底元素永远不能被删除D. 以上三种说法都不对10. 某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为______。A. 350B. 351C. 1D. 不存在这样的二叉树11. 下列叙述中正确的是______。A. 栈是一种先进先出的线性表B. 队列是一种后进先出的线性表C. 栈与队列都是非线性结构D. 栈与队列都是线性结构12. 设某二叉树中共有140个结点,其中有40个度为1的结点。则______。A. 该二叉树中有51个叶子结点B. 该二叉树中有50个叶子结点C. 该二叉树中有51个度为2的结点D. 不可能有这样的二叉树13. 下列描述中正确的是______。A. 线性链表是线性表的链式存储结构B. 栈与队列是非线性结构C. 双向链表是非线性结构D. 只有根结点的二叉树是线性结构14. [希尔排序法属于插入类排序,但它对简单插入排序做了较大的改进。基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。在希尔排序过程中,虽然对于每一个子表采用的仍是插入排序,但是,在子表中每进行一次比较久有可能移去整个线性表中的多个逆序,从而改善了整个排序过程的性能。最欢情况下,希尔排序所需要的比较次数为O(n1.5)。]15. 为了对有序表进行对分查找,则要求有序表______。A. 只能顺序存储B. 只能链式存储C. 可以顺序存储也可以链式存储D. 任何存储方式16. [(4)希尔排序:将整个无序序列分割成若干小的子序列分别进行插入排序。在最坏情况下,希尔排序所需的比较次数为O(n1.5)。]17. 设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是______。A. R={(1,2),(3,2),(5,1),(4,5)}B. R={(1,3),(4,1),(3,2),(5,4)}C. R={(1,2),(2,4),(4,5),(2,3)}D. R={(1,3),(2,4),(3,5),(1,2)}18. 某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为______。A. 400B. 754C. 756D. 不确定19. 下列叙述中正确的是______。A. 线性表链式存储结构的存储空间一般要少于顺序存储结构B. 线性表链式存储结构与顺序存储结构的存储空间都是连续的C. 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的D. 以上说法都不对20. 下列叙述中正确的是______。A. 算法的效率只与问题的规模有关,而与数据的存储结构无关B. 算法的时间复杂度是指执行算法所需要的计算工作量C. 数据的逻辑结构与存储结构是一一对应的D. 算法的时间复杂度与空间复杂度一定相关21. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。在最坏情况下,堆排序需要比较的次数为O(nlog2n)。]22. 下列数据结构中,属于非线性结构的是______。A. 循环队列B. 带链队列C. 二叉树D. 带链栈23. 在线性表的链式存储结构中,其存储空间一般是不连续的,并且______。A. 前件结点的存储序号小于后件结点的存储序号B. 前件结点的存储序号大于后件结点的存储序号C. 前件结点的存储序号可以小于也可以大于后件结点的存储序号D. 以上选项都不对24. 下列数据结构中为非线性结构的是______。A. 双向链表B. 循环队列C. 循环链表D. 二叉链表25. 下列叙述中正确的是______。A. 栈与队列都只能顺序存储B. 循环队列是队列的顺序存储结构C. 循环链表是循环队列的链式存储结构D. 循环队列不是队列的顺序存储结构26. 下列叙述中正确的是______。A. 循环队列中有队头和队尾两个指针,因此,循环队列是非线性结构B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D. 循环队列中元素的个数是由队头指针和队尾指针共同决定27. 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是______。A. 快速排序B. 冒泡排序C. 直接插入排序D. 堆排序28. 某棵树只有度为3的结点和叶子结点,其中度为3的结点有8个,则该树中的叶子结点数为______。A. 不存在这样的树B. 16C. 15D. 1729. 下列叙述中正确的是______。A. 算法复杂度是指算法控制结构的复杂程度B. 算法设计只需考虑结果的可靠性C. 数据的存储结构会影响算法的效率D. 算法复杂度是用算法中指令的条数来度量的30. 某二叉树的中序遍历序列为 CBADE ,后序遍历序列为 CBEDA ,则前序遍历序列为______。A. CBEDAB. ABCDEC. CBADED. EDCBA31. 下列叙述中正确的是______。A. 一个算法的空间复杂度大,则其时间复杂度也必定大B. 一个算法的空间复杂度大,则其时间复杂度必定小C. 一个算法的时间复杂度大,则其空间复杂度必定小D. 算法的时间复杂度与空间复杂度没有直接关系32. 循环队列的存储空间为Q(1:50)。经过一系列正常的入队与退队操作后,front=rear=25。后又成功地将一个元素入队,此时队列中的元素个数为______。A. 50B. 1C. 26D. 233. 某二叉树的后序遍历序列与中序遍历序列相同,均为ABCDEF,则前序遍历序列为______。A. FEDCBAB. CBAFEDC. DEFCBAD. ABCDEF34. 在具有2n个结点的完全二叉树中,叶子结点个数为______。A. n/2B. n+1C. n-1D. n35. 下列叙述中正确的是______。A. 在循环队列中,队头指针和队尾指针的动态变化决定队列的长度B. 在循环队列中,队尾指针的动态变化决定队列的长度C. 在带链的队列中,队头指针与队尾指针的动态变化决定队列的长度D. 在带链的栈中,栈顶指针的动态变化决定栈中元素的个数36. 下列叙述中正确的是______。A. 有的二叉树也能用顺序存储结构表示B. 有两个指针域的链表就是二叉链表C. 多重链表一定是非线性结构D. 顺序存储结构一定是线性结构37. 下列数据结构中,不能采用顺序存储结构的是______。A. 非完全二叉树B. 堆C. 队列D. 栈38. 下列叙述中正确的是______。A. 带链栈的栈底指针是固定的B. 若带链队列的队头指针与队尾指针相同,则队列为空C. 若带链队列的队头指针与队尾指针相同,则队列中至少有一个元素D. 带链栈的栈底指针是随栈的操作而动态变化的39. 在快速排序法中,每经过一次数据交换(或移动)后______。A. 能消除多个逆序B. 只能消除一个逆序C. 不会产生新的逆序D. 消除的逆序个数一定比新产生的逆序个数多40. 下列叙述中正确的是______。A. 循环队列是线性逻辑结构B. 循环队列是线性结构C. 循环队列是链式存储结构D. 循环队列是非线性存储结构41. 设某棵树的度为3,其中度为3,2,1的结点个数分别为3,0,4。则该树中的叶子结点数为______。A. 6B. 8C. 7D. 不可能有这样的树42. 下列叙述中正确的是______。A. 线性链表可以有多个指针域B. 有两个以上指针域的链表是非线性结构C. 只有一个指针域的链表一定是线性结构D. 线性链表最多可以有两个指针域43. 下列叙述中正确的是______。A. 向量是顺序存储的线性结构B. 只有一个根结点和一个叶子结点的结构必定是线性结构C. 非线性结构只能采用链式存储结构D. 所有非线性结构都能采用顺序存储结构44. 下列排序法中,每经过一次元素的交换会产生新的逆序的是______。A. 冒泡排序B. 快速排序C. 简单插入排序D. 简单选择排序45. 设栈与队列初始状态为空。首先A,B,C,D,E依次入栈,再F,G,H,I,J依次入队;然后依次出栈至栈空,再依次出队至队空。则输出序列为______。A. E,D,C,B,A,J,I,H,G,FB. F,G,H,I,J,E,D,C,B,AC. E,D,C,B,A,F,G,H,I,JD. F,G,H,I,J,A,B,C,D,E46. 树的度为3,且有9个度为3的结点,20个叶子结点,但没有度为1的结点。则该树总的结点数为______。A. 30B. 29C. 47D. 不可能有这样的树47. 下列叙述中正确的是______。A. 循环队列与循环链表都是线性结构B. 双向链表既能表示线性结构,又能表示非线性结构C. 顺序存储结构只能表示线性结构D. 具有多个指针域的链表肯定是非线性结构48. 设二叉树的前序序列为ABCDEF,中序序列为ABCDEF,则该二叉树的深度为(根结点为第1层)______。A. 4B. 2C. 3D. 649. 对如下二叉树进行后序遍历的结果为______。 A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA50. 某系统总体结构如下图所示,该系统结构图的深度是______。 A. 4B. 3C. 2D. 151. 设有下列二叉树,此二叉树中序遍历的结果为______。 A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA52. 对下列二叉树进行前序遍历的结果为______。 A. DYBEAFCZXB. YDEBFZXCAC. ABDYECFXZD. ABCDEFXYZ53. 某系统结构图如下图所示(n≥5),该系统结构图的最大扇出数是______。 A. 2B. 3C. nD. n+1 提交成功!
全国二级理论——1.2数据结构与算法 本套试题共50题。 1. 班级:格式如“19计应31”2. 学号:10位数完整格式3. 姓名:4. 为了降低算法的空间复杂度,要求算法尽量采用原地工作(in place)。所谓原地工作是指______。A. 执行算法时不使用任何存储空间B. 执行算法时所使用的额外空间随算法所处理的数据空间大小的变化而变化C. 执行算法时不使用额外空间D. 执行算法时所使用的额外空间固定(即不随算法所处理的数据空间大小的变化而变化)5. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。堆排序在最坏的情况下,其时间复杂度为O(nlog2n)。]6. 下列对队列的叙述正确的是______。A. 队列属于非线性表B. 队列按"先进后出"原则组织数据C. 队列在队尾删除数据D. 队列按"先进先出"原则组织数据7. [(1)冒泡排序法:是一种最简单的交换类排序法,它是通过相邻数据元素的交换逐步将线性表变成有序。假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要比较的次数为n(n-1)/2次。因此冒泡排序总的时间复杂度为O(n2)。]8. 下列叙述中正确的是______。A. 算法的复杂度用于衡量算法的控制结构B. 算法的有穷性是指算法的规模不能太大C. 程序可以作为算法的一种表达方式D. 算法的效率与数据的存储结构无关9. 下列关于栈叙述正确的是______。A. 栈顶元素最先能被删除B. 栈顶元素最后才能被删除C. 栈底元素永远不能被删除D. 以上三种说法都不对10. 某二叉树共有730个结点,其中度为1的结点有30个,则叶子结点个数为______。A. 350B. 351C. 1D. 不存在这样的二叉树11. 下列叙述中正确的是______。A. 栈是一种先进先出的线性表B. 队列是一种后进先出的线性表C. 栈与队列都是非线性结构D. 栈与队列都是线性结构12. 设某二叉树中共有140个结点,其中有40个度为1的结点。则______。A. 该二叉树中有51个叶子结点B. 该二叉树中有50个叶子结点C. 该二叉树中有51个度为2的结点D. 不可能有这样的二叉树13. 下列描述中正确的是______。A. 线性链表是线性表的链式存储结构B. 栈与队列是非线性结构C. 双向链表是非线性结构D. 只有根结点的二叉树是线性结构14. [希尔排序法属于插入类排序,但它对简单插入排序做了较大的改进。基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。在希尔排序过程中,虽然对于每一个子表采用的仍是插入排序,但是,在子表中每进行一次比较久有可能移去整个线性表中的多个逆序,从而改善了整个排序过程的性能。最欢情况下,希尔排序所需要的比较次数为O(n1.5)。]15. 为了对有序表进行对分查找,则要求有序表______。A. 只能顺序存储B. 只能链式存储C. 可以顺序存储也可以链式存储D. 任何存储方式16. [(4)希尔排序:将整个无序序列分割成若干小的子序列分别进行插入排序。在最坏情况下,希尔排序所需的比较次数为O(n1.5)。]17. 设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是______。A. R={(1,2),(3,2),(5,1),(4,5)}B. R={(1,3),(4,1),(3,2),(5,4)}C. R={(1,2),(2,4),(4,5),(2,3)}D. R={(1,3),(2,4),(3,5),(1,2)}18. 某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为______。A. 400B. 754C. 756D. 不确定19. 下列叙述中正确的是______。A. 线性表链式存储结构的存储空间一般要少于顺序存储结构B. 线性表链式存储结构与顺序存储结构的存储空间都是连续的C. 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的D. 以上说法都不对20. 下列叙述中正确的是______。A. 算法的效率只与问题的规模有关,而与数据的存储结构无关B. 算法的时间复杂度是指执行算法所需要的计算工作量C. 数据的逻辑结构与存储结构是一一对应的D. 算法的时间复杂度与空间复杂度一定相关21. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。在最坏情况下,堆排序需要比较的次数为O(nlog2n)。]22. 下列数据结构中,属于非线性结构的是______。A. 循环队列B. 带链队列C. 二叉树D. 带链栈23. 在线性表的链式存储结构中,其存储空间一般是不连续的,并且______。A. 前件结点的存储序号小于后件结点的存储序号B. 前件结点的存储序号大于后件结点的存储序号C. 前件结点的存储序号可以小于也可以大于后件结点的存储序号D. 以上选项都不对24. 下列数据结构中为非线性结构的是______。A. 双向链表B. 循环队列C. 循环链表D. 二叉链表25. 下列叙述中正确的是______。A. 栈与队列都只能顺序存储B. 循环队列是队列的顺序存储结构C. 循环链表是循环队列的链式存储结构D. 循环队列不是队列的顺序存储结构26. 下列叙述中正确的是______。A. 循环队列中有队头和队尾两个指针,因此,循环队列是非线性结构B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D. 循环队列中元素的个数是由队头指针和队尾指针共同决定27. 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是______。A. 快速排序B. 冒泡排序C. 直接插入排序D. 堆排序28. 某棵树只有度为3的结点和叶子结点,其中度为3的结点有8个,则该树中的叶子结点数为______。A. 不存在这样的树B. 16C. 15D. 1729. 下列叙述中正确的是______。A. 算法复杂度是指算法控制结构的复杂程度B. 算法设计只需考虑结果的可靠性C. 数据的存储结构会影响算法的效率D. 算法复杂度是用算法中指令的条数来度量的30. 某二叉树的中序遍历序列为 CBADE ,后序遍历序列为 CBEDA ,则前序遍历序列为______。A. CBEDAB. ABCDEC. CBADED. EDCBA31. 下列叙述中正确的是______。A. 一个算法的空间复杂度大,则其时间复杂度也必定大B. 一个算法的空间复杂度大,则其时间复杂度必定小C. 一个算法的时间复杂度大,则其空间复杂度必定小D. 算法的时间复杂度与空间复杂度没有直接关系32. 循环队列的存储空间为Q(1:50)。经过一系列正常的入队与退队操作后,front=rear=25。后又成功地将一个元素入队,此时队列中的元素个数为______。A. 50B. 1C. 26D. 233. 某二叉树的后序遍历序列与中序遍历序列相同,均为ABCDEF,则前序遍历序列为______。A. FEDCBAB. CBAFEDC. DEFCBAD. ABCDEF34. 在具有2n个结点的完全二叉树中,叶子结点个数为______。A. n/2B. n+1C. n-1D. n35. 下列叙述中正确的是______。A. 在循环队列中,队头指针和队尾指针的动态变化决定队列的长度B. 在循环队列中,队尾指针的动态变化决定队列的长度C. 在带链的队列中,队头指针与队尾指针的动态变化决定队列的长度D. 在带链的栈中,栈顶指针的动态变化决定栈中元素的个数36. 下列叙述中正确的是______。A. 有的二叉树也能用顺序存储结构表示B. 有两个指针域的链表就是二叉链表C. 多重链表一定是非线性结构D. 顺序存储结构一定是线性结构37. 下列数据结构中,不能采用顺序存储结构的是______。A. 非完全二叉树B. 堆C. 队列D. 栈38. 下列叙述中正确的是______。A. 带链栈的栈底指针是固定的B. 若带链队列的队头指针与队尾指针相同,则队列为空C. 若带链队列的队头指针与队尾指针相同,则队列中至少有一个元素D. 带链栈的栈底指针是随栈的操作而动态变化的39. 在快速排序法中,每经过一次数据交换(或移动)后______。A. 能消除多个逆序B. 只能消除一个逆序C. 不会产生新的逆序D. 消除的逆序个数一定比新产生的逆序个数多40. 下列叙述中正确的是______。A. 循环队列是线性逻辑结构B. 循环队列是线性结构C. 循环队列是链式存储结构D. 循环队列是非线性存储结构41. 设某棵树的度为3,其中度为3,2,1的结点个数分别为3,0,4。则该树中的叶子结点数为______。A. 6B. 8C. 7D. 不可能有这样的树42. 下列叙述中正确的是______。A. 线性链表可以有多个指针域B. 有两个以上指针域的链表是非线性结构C. 只有一个指针域的链表一定是线性结构D. 线性链表最多可以有两个指针域43. 下列叙述中正确的是______。A. 向量是顺序存储的线性结构B. 只有一个根结点和一个叶子结点的结构必定是线性结构C. 非线性结构只能采用链式存储结构D. 所有非线性结构都能采用顺序存储结构44. 下列排序法中,每经过一次元素的交换会产生新的逆序的是______。A. 冒泡排序B. 快速排序C. 简单插入排序D. 简单选择排序45. 设栈与队列初始状态为空。首先A,B,C,D,E依次入栈,再F,G,H,I,J依次入队;然后依次出栈至栈空,再依次出队至队空。则输出序列为______。A. E,D,C,B,A,J,I,H,G,FB. F,G,H,I,J,E,D,C,B,AC. E,D,C,B,A,F,G,H,I,JD. F,G,H,I,J,A,B,C,D,E46. 树的度为3,且有9个度为3的结点,20个叶子结点,但没有度为1的结点。则该树总的结点数为______。A. 30B. 29C. 47D. 不可能有这样的树47. 下列叙述中正确的是______。A. 循环队列与循环链表都是线性结构B. 双向链表既能表示线性结构,又能表示非线性结构C. 顺序存储结构只能表示线性结构D. 具有多个指针域的链表肯定是非线性结构48. 设二叉树的前序序列为ABCDEF,中序序列为ABCDEF,则该二叉树的深度为(根结点为第1层)______。A. 4B. 2C. 3D. 649. 对如下二叉树进行后序遍历的结果为______。 A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA50. 某系统总体结构如下图所示,该系统结构图的深度是______。 A. 4B. 3C. 2D. 151. 设有下列二叉树,此二叉树中序遍历的结果为______。 A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA52. 对下列二叉树进行前序遍历的结果为______。 A. DYBEAFCZXB. YDEBFZXCAC. ABDYECFXZD. ABCDEFXYZ53. 某系统结构图如下图所示(n≥5),该系统结构图的最大扇出数是______。 A. 2B. 3C. nD. n+1 提交成功!
4. 为了降低算法的空间复杂度,要求算法尽量采用原地工作(in place)。所谓原地工作是指______。A. 执行算法时不使用任何存储空间B. 执行算法时所使用的额外空间随算法所处理的数据空间大小的变化而变化C. 执行算法时不使用额外空间D. 执行算法时所使用的额外空间固定(即不随算法所处理的数据空间大小的变化而变化)
5. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。堆排序在最坏的情况下,其时间复杂度为O(nlog2n)。]
7. [(1)冒泡排序法:是一种最简单的交换类排序法,它是通过相邻数据元素的交换逐步将线性表变成有序。假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要比较的次数为n(n-1)/2次。因此冒泡排序总的时间复杂度为O(n2)。]
12. 设某二叉树中共有140个结点,其中有40个度为1的结点。则______。A. 该二叉树中有51个叶子结点B. 该二叉树中有50个叶子结点C. 该二叉树中有51个度为2的结点D. 不可能有这样的二叉树
14. [希尔排序法属于插入类排序,但它对简单插入排序做了较大的改进。基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。在希尔排序过程中,虽然对于每一个子表采用的仍是插入排序,但是,在子表中每进行一次比较久有可能移去整个线性表中的多个逆序,从而改善了整个排序过程的性能。最欢情况下,希尔排序所需要的比较次数为O(n1.5)。]
17. 设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是______。A. R={(1,2),(3,2),(5,1),(4,5)}B. R={(1,3),(4,1),(3,2),(5,4)}C. R={(1,2),(2,4),(4,5),(2,3)}D. R={(1,3),(2,4),(3,5),(1,2)}
19. 下列叙述中正确的是______。A. 线性表链式存储结构的存储空间一般要少于顺序存储结构B. 线性表链式存储结构与顺序存储结构的存储空间都是连续的C. 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的D. 以上说法都不对
20. 下列叙述中正确的是______。A. 算法的效率只与问题的规模有关,而与数据的存储结构无关B. 算法的时间复杂度是指执行算法所需要的计算工作量C. 数据的逻辑结构与存储结构是一一对应的D. 算法的时间复杂度与空间复杂度一定相关
21. [(4)堆排序法:堆排序的方法为:①首先将一个无序序列建成堆。②然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。在最坏情况下,堆排序需要比较的次数为O(nlog2n)。]
23. 在线性表的链式存储结构中,其存储空间一般是不连续的,并且______。A. 前件结点的存储序号小于后件结点的存储序号B. 前件结点的存储序号大于后件结点的存储序号C. 前件结点的存储序号可以小于也可以大于后件结点的存储序号D. 以上选项都不对
26. 下列叙述中正确的是______。A. 循环队列中有队头和队尾两个指针,因此,循环队列是非线性结构B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D. 循环队列中元素的个数是由队头指针和队尾指针共同决定
31. 下列叙述中正确的是______。A. 一个算法的空间复杂度大,则其时间复杂度也必定大B. 一个算法的空间复杂度大,则其时间复杂度必定小C. 一个算法的时间复杂度大,则其空间复杂度必定小D. 算法的时间复杂度与空间复杂度没有直接关系
32. 循环队列的存储空间为Q(1:50)。经过一系列正常的入队与退队操作后,front=rear=25。后又成功地将一个元素入队,此时队列中的元素个数为______。A. 50B. 1C. 26D. 2
35. 下列叙述中正确的是______。A. 在循环队列中,队头指针和队尾指针的动态变化决定队列的长度B. 在循环队列中,队尾指针的动态变化决定队列的长度C. 在带链的队列中,队头指针与队尾指针的动态变化决定队列的长度D. 在带链的栈中,栈顶指针的动态变化决定栈中元素的个数
38. 下列叙述中正确的是______。A. 带链栈的栈底指针是固定的B. 若带链队列的队头指针与队尾指针相同,则队列为空C. 若带链队列的队头指针与队尾指针相同,则队列中至少有一个元素D. 带链栈的栈底指针是随栈的操作而动态变化的
45. 设栈与队列初始状态为空。首先A,B,C,D,E依次入栈,再F,G,H,I,J依次入队;然后依次出栈至栈空,再依次出队至队空。则输出序列为______。A. E,D,C,B,A,J,I,H,G,FB. F,G,H,I,J,E,D,C,B,AC. E,D,C,B,A,F,G,H,I,JD. F,G,H,I,J,A,B,C,D,E
47. 下列叙述中正确的是______。A. 循环队列与循环链表都是线性结构B. 双向链表既能表示线性结构,又能表示非线性结构C. 顺序存储结构只能表示线性结构D. 具有多个指针域的链表肯定是非线性结构