绪论 单元测试
1、单选题:()在其著作《计算机程序设计艺术》中,开创了数据结构的最初体系。( )
A:理查德·卡普
B:尼古拉斯·沃斯
C:史蒂芬·古克
D:唐纳德·克努特
正确答案:【唐纳德·克努特】
2、单选题:()提出了著名的公式程序=算法+数据结构。( )
A:唐纳德·克努特
B:理查德·卡普
C:史蒂芬·古克
D:尼古拉斯·沃斯
正确答案:【尼古拉斯·沃斯】
3、单选题:数据结构课程不是()课程的先修课程。
A:操作系统
B:计算机组成原理
C:数据库原理
D:高级语言程序设计
正确答案:【高级语言程序设计】
4、单选题:下面哪个不是常见的数据结构。()
A:线性方程组
B:树
C:线性表
D:栈
正确答案:【线性方程组】
5、单选题:下面说法错误的是()。
A:程序是为处理计算机问题编制的一组指令集
B:我国高校从20世纪50年代就开设了数据结构这一课程
C:通过数据结构课程,能够掌握数据结构的逻辑结构、存储结构及实现算法
D:精心选择的数据结构能够带来更高的计算速度和存储效率
正确答案:【我国高校从20世纪50年代就开设了数据结构这一课程
】
第一章 单元测试
1、单选题:()是组成数据具有独立含义不可分割的最小单位。( )
A:数据变量
B:数据项
C:数据元素
D:数据对象
正确答案:【数据项
】
2、单选题:数据逻辑结构中非线性结构包括()。
A:图形结构和堆栈结构
B:顺序结构和链式结构
C:树形结构和图形结构
D:树形结构和队列结构
正确答案:【树形结构和图形结构
】
3、单选题:设某数据结构的二元组形式表示为A=(D,R),D={01,02,03,04,05,06,07,08,09},R={r},r={<01,02>,<01,03>,<01,04>,<02,05>,<02,06>,<03,07>,<03,08>,<03,09>},则数据结构A是()。
A:物理结构
B:线性结构
C:树形结构
D:图形结构
正确答案:【树形结构】
4、单选题:数据结构的主要研究内容包括数据的()以及数据的运算和操作。
A:抽象结构、物理结构
B:离散结构、抽象结构
C:逻辑结构、抽象结构
D:逻辑结构、物理结构
正确答案:【逻辑结构、物理结构】
5、单选题:数据结构被形象化的定义为一个二元组Group=(D,S),其中D为数据元素的有限集,S为()的有限集。
A:结构
B:运算
C:关系
D:操作
正确答案:【关系】
6、单选题:线性结构中的数据元素具有()关系。
A:多对多关系
B:一对一关系
C:一对多关系
D:多对一关系
正确答案:【一对一关系】
7、单选题:对一个算法的评价,不包括如下()方面的内容。
A:健壮性和可读性
B:并行性
C:时空复杂度
D:正确性
正确答案:【并行性】
8、单选题:下列时间复杂度中最好的是()。
A:O(n)
B:O(2^n)
C:O(n^2)
D:O(log2n)
正确答案:【O(log2n)
】
9、单选题:以下算法的时间复杂度是()。 i=1; while(i<=n) i=i*3;
A:O(n)
B:O(n^3)
C:O(log2n)
D:O(log3n)
正确答案:【O(log3n)】
10、单选题:以下算法:s=0;for(i=0;i<n;i++)
for(j=0;j<n;j++)s=s+a[i][j];printf(“%dn”,sum);的时间复杂度为( )
A:O(n)
B:O(n^3)
C:O(log2n)
D:O(n^2)
正确答案:【O(n^2)】
第二章 单元测试
1、单选题:下面关于线性表的叙述中,错误的是哪一个?()
A:线性表采用链接存储,便于插入和删除操作
B:线性表采用顺序存储,便于插入和删除操作
C:线性表采用链接存储,不必占用一片连续的存储单元
D:线性表采用顺序存储,必须占用一片连续的存储单元
正确答案:【线性表采用顺序存储,便于插入和删除操作
】
2、单选题:如果最常用的操作是取第i个结点及其前驱,则采用()存储方式最节省时间。
A:顺序表
B:单链表
C:单循环链表
D:双链表
正确答案:【顺序表】
3、单选题:线性表采用顺序存储时,存储地址()。
A:连续与否均可
B:一定是不连续的
C:可以与逻辑顺序不一致
D:必须是连续的
正确答案:【必须是连续的】
4、单选题:线性表采用链式存储时,结点的存储地址()。
A:和头结点的存储地址相连续
B:连续与否均可
C:必须是不连续的
D:必须是连续的
正确答案:【连续与否均可
】
5、单选题:带头结点的单链表head为空的判定条件是()
A:head->next==NULL
B:head!=NULL
C:head==NULL
D:head->next==head
正确答案:【head->next==NULL
】
6、单选题:设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为()。
A:p->next=p
B:p=p->next
C:p=p->next->next
D:p->next=p->next->next
正确答案:【p->next=p->next->next
】
7、单选题:在一个长度为n(n>1)的单链表上,设有头指针和尾指针,执行()操作与链表的长度有关。
A:删除单链表中的第一个元素
B:删除单链表中的最后一个元素
C:在单链表的第一个元素前插入一个新元素
D:在单链表的最后一个元素后插入一个新元素
正确答案:【删除单链表中的最后一个元素
】
8、单选题:若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用()存储方式最节省运算时间。
A:单链表
B:给出表头指针的单循环链表
C:双链表
D:带头结点的双循环链表
正确答案:【带头结点的双循环链表
】
9、单选题:在双向链表存储结构中,删除p所指的结点时须修改指针()。
A:p->prior->next=p->next; p->next->prior=p->prior;
B:p->prior=p->prior->prior; p->prior->next=p;
C:p->next->prior=p; p->next=p->next->next;
D:p->next=p->prior ->prior; p->prior=p->next->next;
正确答案:【p->prior->next=p->next; p->next->prior=p->prior;
】
10、单选题:建立一个长度为n的有序单链表的时间复杂度为()
A:O(1)
B:O(n)
C:O(n^2)
D:O(log2n)
正确答案:【O(n^2)】
第三章 单元测试
1、单选题:若让元素C,h,i,n,a依次进栈,则出栈次序不可能出现在()种情况。
A:h,i,a,n,C
B:h,C,a,n,i
C:n,i,C,h,a
D:a,n,i,h,C
正确答案:【n,i,C,h,a】
2、单选题:若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为()。
A:不确定
B:i
C:n-i
D:n-i+1
正确答案:【n-i+1】
3、单选题:设计一个判别表达式中左,右括号是否配对出现的算法,采用()数据结构最佳。
A:栈
B:线性表的顺序存储结构
C:线性表的链式存储结构
D:队列
正确答案:【栈
】
4、单选题:若栈采用顺序存储方式存储,现两栈共享空间V[1..m],top[i]代表第i个栈(i=1,2)栈顶,栈1的底在V[1],栈2的底在V[m],则栈满的条件是()
A:top[1]+1= top[2]
B:|top[2]-top[1]|=0
C:top[1]+ top[2]=m
D:top[1] = top[2]
正确答案:【top[1]+1= top[2]
】
5、单选题:为解决计算机主机与打印机间速度不匹配问题,通常设一个打印数据缓冲区。主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是()。
A:线性表
B:栈
C:有序表
D:队列
正确答案:【队列】
6、单选题:用链接方式存储的队列,在进行删除运算时( )。
A:仅修改头指针
B:头、尾指针都要修改
C:头、尾指针可能都要修改
D:仅修改尾指针
正确答案:【头、尾指针可能都要修改
】
7、单选题:栈和队列的共同点是()。
A:都是先进先出
B:都是先进后出
C:只允许在端点处插入和删除元素
D:没有共同点
正确答案:【只允许在端点处插入和删除元素】
8、单选题:设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是()。
A:4
B:2
C:6
D:3
正确答案:【3】
9、单选题:循环队列存储在数组A[0..m]中,则入队时的操作为()。
A:rear=rear+1
B:rear=(rear+1)%(m-1)
C:rear=(rear+1)%(m+1)
D:rear=(rear+1)%m
正确答案:【rear=(rear+1)%(m+1)
】
10、单选题:递归过程或者函数调用时处理参数和返回地址需要用到()数据结构。
A:栈
B:线性表
C:二叉树
D:队列
正确答案:【栈
】
第四章 单元测试
1、单选题:串是一种特殊的线性表,其特殊性体现在()。
A:数据元素是一个字符
B:可以链式存储
C:数据元素可以是多个字符若
D:可以顺序存储
正确答案:【数据元素是一个字符
】
2、单选题:若串S=“master”其子串的个数是()。
A:21
B:22
C:23
D:20
正确答案:【22】
3、单选题:串的长度是指()。
A:串中所含字符的个数
B:串中所含不同字符的个数
C:串中所含不同字母的个数
D:串中所含非空格字符的个数
.
正确答案:【串中所含字符的个数
】
如有任何疑问请及时联系QQ 50895809反馈