南开17秋学期《数据结构》在线作业(答案)
17秋学期《数据结构》在线作业一、单选题:【20道,总分:40分】南开大学
1.设串s1=’ABCDEFG’,s2=’PQRST’,函数con(x,y)返回x和y串的连接串,subs(s, i, j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1, 2, len(s2)), subs(s1, len(s2), 2))的结果串是( ) (满分:2)
A. BCDEF
B. BCDEFG
C. BCPQRST
D. BCDEFEF
2.排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为( ) (满分:2)
A. 希尔排序
B. 冒泡排序
C. 插入排序
D. 选择排序
3.在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是( ) (满分:2)
A. 访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
B. 在第i个结点后插入一个新结点(1≤i≤n)
C. 删除第i个结点(1≤i≤n)
D. 将n个结点从小到大排序
4.用邻接表表示图进行深度优先遍历时,通常是采用( )来实现算法的 (满分:2)
A. 栈
B. 队列
C. 树
D. 图
5.在一个图中,所有顶点的度数之和等于图的边数的( )倍 (满分:2)
A. 1/2
B. 1
C. 2
D. 4
6.已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是( ) (满分:2)
A. 0 2 4 3 1 5 6
B. 0 1 3 6 5 4 2
C. 0 4 2 3 1 6 5
D. 0 3 6 1 5 4 2
7.不含任何结点的空树( ) (满分:2)
A. 是一棵树
B. 是一棵二叉树
C. 是一棵树也是一棵二叉树
D. 既不是树也不是二叉树
8.线性表L在( )情况下适用于使用链式结构实现。 (满分:2)
A. 需经常修改L中的结点值
B. 需不断对L进行删除插入
C. L中含有大量的结点
D. L中结点结构复杂
9.堆的形状是一棵( ) (满分:2)
A. 二叉排序树
B. 满二叉树
C. 完全二叉树
D. 平衡二叉树
10.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( ) (满分:2)
A. 110
B. 108
C. 100
D. 120
11.用邻接表表示图进行广度优先遍历时,通常是采用( )来实现算法的 (满分:2)
A. 栈
B. 队列
C. 树
D. 图
12.设F是一个森林,B是由F变换得的二叉树。若F中有n个非终端结点,则B中右指针域为空的结点有( )个 (满分:2)
A. n-1
B. n
C. n+1
D. n+2
13.对有n个记录的表作快速排序,在最坏情况下,算法的时间复杂度是( ) (满分:2)
A. O(n)
B. O(n2)
C. O(nlog2n)
D. O(n3)
14.将5个不同的数据进行排序,至多需要比较( )次 (满分:2)
A. 8
B. 9
C. 10
D. 25
15.折半搜索与二叉搜索树的时间性能( ) (满分:2)
A. 相同
B. 完全不同
C. 有时不相同
D. 数量级都是O(log2n)
16.在表长为n的链表中进行线性查找,它的平均查找长度为( ) (满分:2)
A. ASL=n
B. ASL=(n+1)/2
C.
D.
17.栈中元素的进出原则是( ) (满分:2)
A. 先进先出
B. 后进先出
C. 栈空则进
D. 栈满则出
18.链表是一种采用 存储结构存储的线性表 (满分:2)
A. 顺序
B. 链式
C. 星式
D. 网状
19.深度优先遍历类似于二叉树的( ) (满分:2)
A. 先序遍历
B. 中序遍历
C. 后序遍历
D. 层次遍历
20.若一组记录的排序码为(46, 79, 56, 38, 40, 84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为 (满分:2)
A. 38,40,46,56,79,84
B. 40,38,46,79,56,84
C. 40,38,46,56,79,84
D. 40,38,46,84,56,79
二、判断题:【30道,总分:60分】
1.队是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。 (满分:2)
A. 错误
B. 正确
2.栈和队列是一种非线性数据结构。 (满分:2)
A. 错误
B. 正确
3.二叉树中所有结点个数是2k-1-1,其中k是树的深度。 (满分:2)
A. 错误
B. 正确
4.二叉树中所有结点,如果不存在非空左子树,则不存在非空右子树。 (满分:2)
A. 错误
B. 正确
5.线性表的逻辑顺序与存储顺序总是一致的。 (满分:2)
A. 错误
B. 正确
6.两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。 (满分:2)
A. 错误
B. 正确
7.二叉树中每个结点有两棵非空子树或有两棵空子树。 (满分:2)
A. 错误
B. 正确
8.二叉树中每个结点的两棵子树的高度差等于1。 (满分:2)
A. 错误
B. 正确
9.一个栈的输入序列是12345,则栈的输出序列不可能是12345。 (满分:2)
A. 错误
B. 正确
10.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。 (满分:2)
A. 错误
B. 正确
11.用二叉链表法(link-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。 (满分:2)
A. 错误
B. 正确
12.在表结构中最常用的是线性表,栈和队列不太常用。 (满分:2)
A. 错误
B. 正确
13.链表的物理存储结构具有同链表一样的顺序。 (满分:2)
A. 错误
B. 正确
14.对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表 (满分:2)
A. 错误
B. 正确
15.顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 (满分:2)
A. 错误
B. 正确
16.顺序存储方式只能用于存储线性结构。 (满分:2)
A. 错误
B. 正确
17.线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。 (满分:2)
A. 错误
B. 正确
18.二叉树中每个结点的两棵子树是有序的。 (满分:2)
A. 错误
B. 正确
19.二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。 (满分:2)
A. 错误
B. 正确
20.具有12个结点的完全二叉树有5个度为2的结点。 (满分:2)
A. 错误
B. 正确
21.线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。 (满分:2)
A. 错误
B. 正确
22.线性表在物理存储空间中也一定是连续的。 (满分:2)
A. 错误
B. 正确
23.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。 (满分:2)
A. 错误
B. 正确
24.栈和队列的存储方式既可是顺序方式,也可是链接方式。 (满分:2)
A. 错误
B. 正确
25.链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。 (满分:2)
A. 错误
B. 正确
26.对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i—1个结点。 (满分:2)
A. 错误
B. 正确
27.链表的每个结点中都恰好包含一个指针。 (满分:2)
A. 错误
B. 正确
28.线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。 (满分:2)
A. 错误
B. 正确
29.顺序存储方式的优点是存储密度大,且插入、删除运算效率高。 (满分:2)
A. 错误
B. 正确
30.栈和链表是两种不同的数据结构。 (满分:2)
A. 错误
B. 正确
更多学习资料请登录www.openhelp100.com
页:
[1]