第一章 单元测试

1、单选题:
以下可以用于定义一个完整的数据结构的是( )。
选项:
A:数据关系
B:数据元素
C:抽象数据类型
D:数据对象
答案: 【抽象数据类型

2、单选题:
以下关于数据结构的说法中,正确的是( )。
选项:
A:数据的逻辑结构独立于其存储结构
B:数据的逻辑结构唯一决定了其存储结构
C:数据结构仅由其逻辑结构和存储结构决定
D:数据的存储结构独立于其逻辑结构
答案: 【数据的逻辑结构独立于其存储结构

3、单选题:
计算算法的时间复杂度是属于一种( )。
选项:
A:事后分析估算的方法
B:事后统计的方法
C:事前统计的方法
D:事前分析估算的方法
答案: 【事前分析估算的方法

4、单选题:
算法的时间复杂度主要取决于( )。
选项:
A:问题的规模
B:待处理数据的值
C:数据的类型
D:计算的环境
答案: 【问题的规模

5、判断题:

int suanfa(int n){
int i=1, s=1;
while(s<n) s+=++I;
return i;
}
上面算法的时间复杂度是O()。 ( )
选项:
A:对
B:错
答案: 【

第二章 单元测试

1、单选题:
线性表L=(a1,a2,……,an),下列说法正确的是( )。
选项:
A:除第一个和最后一个元素外,其余每个元素都由一个且仅有一个直接前驱和直接后继
B:每个元素都有一个直接前驱和一个直接后继
C:线性表中至少要有一个元素
D:表中诸元素的排列顺序必须是由小到大或由大到小
答案: 【除第一个和最后一个元素外,其余每个元素都由一个且仅有一个直接前驱和直接后继

2、单选题:
在长度为n的顺序表中删除第i (1≤i≤n) 个元素时,需向前移动( )个元素。
选项:
A:n-i
B:n-i+1
C:i-1
D:n
答案: 【n-i+1

3、单选题:
如果线性表最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。
选项:
A:仅有尾指针的单循环链表
B:仅有头指针的单循环链表
C:单链表
D:双链表
答案: 【仅有尾指针的单循环链表

4、单选题:
在一个单链表中,若删除p所指向结点的后续结点,则所需修改指针的操作为( )。
选项:
A:p->next=p->next->next;
B:p=p->next;p->next=p->next->next;
C:p=p->next;
D:p=p->next->next;
答案: 【p->next=p->next->next;

5、单选题:
设线性表有2n个元素,以下操作中,在单链表上实现要比在顺序表上实现效率更高的( )。
选项:
A:在最后一个元素的后面插入一个新元素
B:删除指定元素
C:交换第i个元素和第2n-i-1个元素(i=, 1, …, n-1)
D:顺序输出前k个元素
答案: 【删除指定元素

发表评论

电子邮件地址不会被公开。 必填项已用*标注