绪论 单元测试

1、判断题:
学好算法与数据结构的关键在于多多实践。
选项:
A:对
B:错
答案: 【

第一章 单元测试

1、单选题:
数据结构是(  )
选项:
A:一种数据类型
B:一组性质相同的数据元素的集合
C:数据的存储结构
D:相互之间存在一种或多种特定关系的数据元素的集合
答案: 【相互之间存在一种或多种特定关系的数据元素的集合

2、单选题:
下列说法错误的是()
选项:
A:数据元素是数据的基本单位
B:数据在计算机存储器内的存在形式称为机外表示
C:数据是指描述客观事物的特征及活动所采用的符号形式
D:数据处理方式总是与数据的表示形式相联系
答案: 【数据在计算机存储器内的存在形式称为机外表示

3、判断题:
算法的描述方法只有语言方式。
选项:
A:对
B:错
答案: 【

4、单选题:
下列关于算法说法错误的是()
选项:
A:算法是指令的有限序列
B:算法就是数学中的计算方法
C:算法是对特定问题求解步骤的一种描述
D:算法是在存储结构上的操作实现方法
答案: 【算法就是数学中的计算方法

5、多选题:
有哪几种存储结构?
选项:
A:索引存储方式
B:散列存储方式
C:顺序存储方式
D:链式存储方式
答案: 【索引存储方式;
散列存储方式;
顺序存储方式;
链式存储方式

6、单选题:
算法的效率主要是指()
选项:
A:算法的空间效率和时间效率
B:算法的时间效率
C:其他选项都不对
D:算法的空间效率
答案: 【算法的空间效率和时间效率

7、单选题:
在数据结构的讨论中把数据结构从逻辑上分为()
选项:
A:内部结构与外部结构
B:线性结构与非线性结构
C:静态结构与动态结构
D:紧凑结构与非紧凑结构
答案: 【线性结构与非线性结构

8、单选题:
指出下列程序段的时间复杂度()sum=1;for (i=0;sum<n;i++) sum+=1;
选项:
A:O(n*n)
B:O(1)
C:O(0)
D:O(n)
答案: 【O(n)

9、单选题:
树形结构中元素之间存在()关系
选项:
A:一对一
B:多对多
C:没有关系
D:一对多
答案: 【一对多

10、单选题:
图形结构中元素之间存在()关系
选项:
A:多对多
B:一对一
C:一对多
D:没有关系
答案: 【多对多

第二章 单元测试

1、单选题:
带头结点的单链表head为空的判定条件是()
选项:
A:head->next= =head
B:head= =NULL
C:head!=NULL
D:head->next= =NULL
答案: 【head->next= =NULL

2、单选题:
循环链表的主要优点是( )。
选项:
A:在表中任一结点出发都能扫描整个链表
B:在进行插入、删除运算时能保证链表不断开
C:已知某结点位置后能容易找到其直接前驱
D:不再需要头指针
答案: 【在表中任一结点出发都能扫描整个链表

3、单选题:
线性表若采用链式存储结构时,要求内存中可用存储单元的地址()
选项:
A:一定是不连续的
B:连续或不连续都可以
C:必须是连续的
D:部分地址必须是连续的
答案: 【连续或不连续都可以

4、单选题:
若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用( )存储方式最节省时间。
选项:
A:双链表
B:单链表
C:循环单链表
D:顺序表
答案: 【顺序表

5、单选题:
在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动( )个元素
选项:
A:n-i+1
B:n-i
C:n-i-1
D:i
答案: 【n-i+1

6、单选题:
线性表的顺序存储结构是一种( )存储结构。
选项:
A:顺序存取
B:散列存取
C:随机存取
D:索引存取
答案: 【随机存取

7、单选题:
在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是( )。
选项:
A:q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;
B:q->next=p->next;q->prior=p;p->next=q;p->next=q;
C:p->next=q;p->next->prior=q;q->prior=p;q->next=p->next;
D:p->next=q;q->prior=p;p->next->prior=q;q->next=q;
答案: 【q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;

8、单选题:
在下列对顺序表进行的操作中,算法时间复杂度为O(1)的是( )。(答案中的i均为合法输入)
选项:
A:在第i个元素之后插入一个新元素
B:访问第i个元素的前驱
C:删除第i个元素
D:对顺序表中元素进行排序
答案: 【访问第i个元素的前驱

9、单选题:
已知指针p和q分别指向某单链表中第一个结点和最后一个结点。假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为( )。
选项:
A:s->next=q;p->next=s->next;
B:q->next=s->next;s->next=p;
C:p->next=s->next;s->next=q;
D:s->next=p;q->next=s->next;
答案: 【q->next=s->next;s->next=p;

10、单选题:
在表长为n的顺序表中,当在任何位置删除一个元素的概率相同时,删除一个元素所需移动的平均个数为( )。
选项:
A:n
B:(n+1)/2
C:n/2
D:(n-1)/2
答案: 【(n-1)/2

发表评论

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