一、单选题(共6题,30分)
1、每种数据结构都具备三个基本运算:插入、删除和查找,这种说法( )。
A、 正确
B、 不正确
正确答案: B解析:比如二维数组它不具有插入和删除的功能
2、以下与数据的存储结构无关的术语是( )
A、 循环队列
B、 链表
C、 哈希(hash)表
D、 栈
正确答案: D
解析:答案是D,栈是限制了插入删除点的线性表,只是逻辑结构而无关存储结构A,循环队列指的是在顺序表上存储的队列;B,链表就是链接存储C,就是散列存储
3、在数据结构中,从逻辑上可以把数据结构分成( )。
A、 动态结构和静态结构
B、 紧凑结构和非紧凑结构
C、 线性结构和非线性结构
D、 内部结构和外部结构
正确答案: C这个就不用说啦哈哈哈哈
4、线性表若采用链式存储结构时,要求内存可用存储单元的地址( )
A、 必须是连续的
B、 部分地址必须是连续的
C、 一定是不连续的
D、 连续不连续都可以
正确答案: D
5、算法的时间复杂度取决于( )
A、 问题的规模
B、 待处理数据的初态
C、 问题的规模和待处理数据的初态
正确答案: A别怀疑啦,这个就是选问题的规模
6、下述函数中渐近时间最小的是( )
正确答案: B其实,实在不会可以直接2的31次幂(2^31)带进去算看哪一个最小,我就是这么选的嗨嗨嗨
二、多选题(共5题,27.5分)
1、数据结构被形式定义为(D,S),其中D是( )的有限集合,S是D上的( )有限的集合。
A、 算法
B、 数据元素
C、 数据操作
D、 逻辑结构
E、 操作
F、 映象
G、 存储
H、 关系
正确答案: BH
2、算法分析的目的是( ),算法分析的两个主要方面是( ).
A、 给出数据结构的合理性
B、 研究算法中的输入和输出的关系
C、 分析算法的效率以求改进
D、 分析算法的易懂性和文档性
E、 空间复杂性和时间复杂性
F、 正确性和简明性
G、 可读性和文档性
H、 数据复杂性和程序复杂性
正确答案: CE
3、计算机算法指的是( ),它必具备输入,输出和( )等五个特性。
A、 计算方法
B、 排序方法
C、 解决问题的有限运算序列 //计算机算法指的是解决问题的有限运算序列
D、 调度方法
E、 可行性、可移植性和可扩充性
F、 可行性、确定性和有穷性
G、 确定性、有穷性和稳定性
H、 易读性、稳定性和安全性
正确答案: CF
4、线性表的顺序存储结构是一种(B )的存储结构,线性表的链式存储结构是一种(A )存储结构.
A、 顺序存取
B、 随机存取
C、 索引存取
D、 散列存取
正确答案: BA //不要记反啦
三、填空题(共7题,39.5分)
1、数据逻辑结构包括_______、_______、_______、_______四种类型,树形结构和图形结构合称______________.
正确答案:
第1空: 集合结构、线性结构、树形结构、图形结构;非线性结构2、对于给定的n个元素,可以构造出的逻辑结构有____、____、____和____四种。
正确答案:
第1空:集合结构;线性结构;树形结构;图形结构3、算法的五个重要特性是____、____、____、____、____。
正确答案: 有穷性;确定性;可行性;输入;输出
4、评价算法的性能从利用计算机资源角度看主要从____方面进行分析。
正确答案:
第1空:时间复杂度和空间复杂度5、线性结构中元素之间存在____关系,树形结构中元素之间存在____关系,图形结构中元素之间存在____关系。
正确答案:
第1空:一对一
第2空:一对多
第3空:多对多6、下面程序段的时间复杂度是____。
i=s=0;
while(s<n)
{
i++;
s++;
}正确答案:
第1空:O(n)这里是一层循环,而且每次s都只加1,明显是O(n)
7、下面程序段的时间复杂度是____。
s=0;
for (i=0;i<n;i++)
for (j=0;j<m;j++)
s+=a[i][j];正确答案:
第1空:O(m*n)这里是两层循环,累加这个二维数组里面的值