《大学计算机第四章练习题答案》由会员分享,可在线阅读,更多相关《大学计算机第四章练习题答案(6页珍藏版)》请在金锄头文库上搜索。
1、第四章 练习题答案(1) 下面叙述正确的是_。(C)A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2) 算法的时间复杂度是指_。(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(3) 算法的空间复杂度是指_。(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间(4) 下列叙述中正确的是_。 (B)A) 算法的效率只与问题的规模有关,而与
2、数据的存储结构无关B) 算法的时间复杂度是指执行算法所需要的计算工作量C) 数据的逻辑结构与存储结构是一一对应的D) 算法的时间复杂度与空间复杂度一定相关(5)算法的有穷性是指_。( A )A)算法程序的运行时间是有限的 B)算法程序所处理的数据量是有限的 C)算法程序的长度是有限的 D)算法只能被有限的用户使用 (6) 数据的存储结构是指_。 ( B )A. 数据所占的存储空间量 B. 数据的逻辑结构在计算机中的表示 C. 数据在计算机中的顺序存储方式 D. 存储在外存中的数据(7) 下面描述线性表的链式存储结构错误的是_。(A)A)线性表顺序存储B)线性表随机存储C)线性表的链式存储结构也
3、称为线性链表D)线性表的链式存储结构只能顺序存取(8)数据的存储结构是指_。 ( B)A.数据所占的存储空间量 B.数据的逻辑结构在计算机中的表示 C.数据在计算机中的顺序存储方式 D.存储在外存中的数据(9) 下列叙述中正确的是_。(D )A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(10)下列叙述中正确的是_。(A) A) 线性链表是线性表的链式存储结构 B) 栈与队列是非线性结构C) 双向链表是非
4、线性结构 D) 只有根结点的二叉树是线性结构(11) 数据结构中,与所使用的计算机无关的是数据的_。( c )。A存储结构 B物理结构 C逻辑结构 D物理和存储结构(12) 下列叙述中正确的是_。(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构(13) 链表不具有的特点是( A )。A可随机访问任一元素 B插入和删除不需要移动元素C不必事先估计存储空间 D所需空间与线性表长度成正比(14)下列关于队列的叙述中正确的是_。(C)A. 在队列中只能插入数据 B. 在队列中只能删除数据C. 队列是先进先出的线性表 D. 队列是先进后出的线性表 (
5、15) 用链表表示线性表的优点是_。(A)A. 便于插入和删除操作 B. 数据元素的物理顺序与逻辑顺序相同C. 花费的存储空间较顺序存储少 D. 便于随机存取(16) 按照”后进先出”原则组织数据的数据结构是_。( B )A)队列B)栈C)双向链表D)二叉树(17) 以下数据结构中不属于线性数据结构的是_。(C)A. 队列 B. 线性表 C. 二叉树 D. 栈 (18)下列关于栈的描述中错误的是_。(B)A) 栈是先进后出的线性表 B) 栈必须链式存储C) 栈具有记忆作用 D) 对栈的插入与删除操作中,不需要改变栈底指针(19)下列关于栈的描述正确的是_。(C)A)在栈中只能插入元素而不能删除
6、元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(20)下列关于栈的叙述正确的是 _。( B)A)栈按“先进先出”组织数据B) 栈按“先进后出”组织数据 C)只能在栈底插入数据 D)不能删除数据 (21) 下列叙述中正确的是_。( D) A)栈是“先进先出”的线性表 B)队列是“先进后出”的线性表 C)循环队列是非线性结构 D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构 (22) 下列对列的叙述正确的是_。 ( D )A) 队列属于非线性表B) 队列按“先进后出”原则组织数据C) 队
7、列在队尾删除数据D) 队列按“先进先出”原则组织数据(23) 一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是_。BA)123456ABCDE B)EDCBA54321C)ABCDE12345 D)54321EDCBA(24)按“先进后出”原则组织数据的结构是_。(B)。 A有序表 B栈 C队列 D二叉树 (25) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是_。(D)A. ABCED B. DBCEA C. CDABE D. DCBEA(26) 若进栈序列为1,2,3,4,则
8、( C )不可能是出栈序列。A1,2,3,4 B4,3,2,1 C3,4,1,2 D2,4,3,1(27)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是_。(C ) A)10 B)8 C)6 D)4 (28)一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为_。(A )A)219 B)221 C)229 D)231(29) 在深度为7的满二叉树中,叶子结点的个数为_。( C ) A)32 B)31 C)64 D)63(30) 在深度为5的满二叉树中,叶子结点的个数为_。(C)A. 32 B. 31 C. 16 D. 15(31) 某二叉树中有n个度为2的结点,
9、则该二叉树中的叶子结点为_。 (A )A) n+1 B) n-1 C) 2n D) n/2(32) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为_。(B)A. 349 B. 350C. 255 D. 351(33)对如下二叉树进行后序遍历的结果为_。 ( D)A) ABCDEFB) DBEFCA C) DEBCFAD) DEBFCA (34) 对下列二叉树进行前序遍历的结果_B_。A. DBEGACF B. ABDEGCF C. DGEBFCA D. DEGBFCAABCDFGE(35)对下列二叉树:FCEAGBD进行中序遍历的结果是_A_。A)、ACBDFEG B)、ACB
10、DFGE C)、ABDCGEF D)、FCADBEG (36) 对下列二叉树进行后序遍历的结果_C_。A. ABCDEFG B. DBEGACFC. DGEBFCA D. DEGBFCAABCDFGE*(37) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是_。( A )。Acedba B acbed C decab Dcdeab(38) 对于长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为_。(C)A) log2n B) n/2 C) n D) n+1(39)下列数据结构中,能用二分法进行查找的是_。(A)A)顺序存储的有序线性表 B)线性链表C
11、)二叉链表 D)有序线性链表(40) 在长为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为_。_B_。A)、63 B)、64 C)、6 D)、7二、填空题(1) 算法的复杂度主要包括_复杂度和空间复杂度。答:时间 (2) 数据结构包括数据的逻辑结构、数据的 _以及对数据的操作运算。答:存储结构(3) 顺序存储方法是把逻辑上相邻的结点存储在物理位置_的存储单元中。答:相邻(4) 栈的基本运算有三种:_、退栈和读栈顶元素。答:入栈(5) 在深度为5的完全二叉树中,度为2的结点数最多为_个。【15】(6) 某二叉树中度为2的结点有18个,则该二叉树中有_个叶子结点。(19)(7)一棵二叉
12、树第六层(根结点为第一层)的结点数最多为 _个。( 32 )(8) 在深度为7的满二叉树中,度为2的结点个数为_63_。(9) 在深度为7的满二叉树中,叶子结点的个数为(64)。(10)深度为5的满二叉树有【 】个叶子结点。答:16(11) 设一棵二叉树中有3个叶子结点,有6个度为1的结点,则该二叉树中总的结点数为_个。 【11】(12) 设一棵完全二叉树共有500个结点,则在该二叉树中有_个叶子结点。答:250(13) 在最坏情况下,冒泡排序所需要的比较次数为( )。 n(n-1)/2 (14) 对于线性表( 5 , 8 , 3 , 2 , 7 , 1 ),冒泡排序第一趟扫描的结果为_;答:( 5 , 3 , 2 , 7 , 1 , 8 )(15) 对于线性表( 12 , 8 ,