绪论和线性表
1.以下关于数据结构的说法中正确的是(A )。
A.数据结构的逻辑结构独立于其存储结构
B.数据结构的存储结构独立于该数据结构的逻辑结构
C.数据结构的逻辑结构唯一地决定了该数据结构的存储结构
D.数据结构仅由其逻辑结构和存储结构决定
逻辑结构独立于计算机,与数据的存储无关
2.非线性数据结构:树、图、集合
3.下面关于抽象数据类型的描述,不正确的是(D )。
A.数据封装
B.使用与实现分离
C.信息隐藏
D.用例驱动
4.算法的时间复杂度与( 问题规模)有关。
算法求解问题输入量的多少
5.某算法的时间复杂度是O(n^2),表明该算法的(D )。
A.问题规模是n^2
B.问题规模与n^2成正比
C.执行时间等于n^2
D.执行时间与n^2成正比
6.算法+数据结构=程序
7.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储(C)。
A.数据的处理方法
B.数据元素的类型
C.数据元素之间的关系
D.数据的存储方法
8.树形结构中元素之间存在(一对多)关系
图形结构中元素之间存在(多对多)关系
(集合)中任何两个结点之间都没有逻辑关系。
9.执行下面程序段时,执行S语句的频度为(D)。
for(int i=0;i<n;i++)
for(int j=1;j<=i;j++)
S;
A.n^2
B.n^2/2
C.n(n+1)
D.n(n+1)/2
语句频度和时间复杂度的关系
10.算法分析的目的是(分析算法的效率以求改进)。
11.线性表是一个具有相同特性(数据类型)的数据元素的有限序列。相邻元素具有序偶关系。
12.某线性表采用顺序存储结构,每个元素占4个存储单元,首地址为100,则第12个元素的存储地址为(144)。
别忘了减去1
13.顺序表取值O(1),查找,插入,删除O(n)
单链表取值,查找,插入,删除,头插建表,尾插建表O(n)
需不断对L进行删除插入
在单链表中,增加一个头结点的最终目的是为了(方便运算 的实现 )。
14.如果对线性表的运算只有2种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用(B)。
A.只有表头指针没有表尾指针的循环单链表
B.只有表尾指针没有表头指针的循环单链表
C.非循环双链表
D.循环双链表
15.队列和栈都是运算受限的线性表,只允许在表的两端进行运算。x
只允许在端点出插入和删除元素。堆栈和队列都是插入、删除受到约束的线性表。
16.设一个堆栈的入栈顺序是1、2、3、4、5。若第一个出栈的元素是4,则最后一个出栈的元素必定是:1or 5
17.若采用带头、尾指针的单向链表表示一个堆栈,那么该堆栈的栈顶指针top应该如何设置?将链表头设为top
18.在含有n个节点的二叉链表中有n+1个空链域。
19.已知一棵完全二叉树的第9层(设根为第1层)有100个叶结点,则该完全二叉树的结点个数最多是:823
20.将二叉树B转换成树T后,B中结点的中序遍历次序就是T中结点的(C)遍历次序。提示:二叉树转换成树T,意味这个二叉树没有右子树,否则转换的结果就不是树T,而是森林。
A.先根
B.中根
C.后根
D.层次