第一章绪论单元测试
一、单选(2分)
1、___C__ 是数据的最小单位。
-
A.信息项
-
B.数据元素
-
C.数据项
-
D.表元素
2、以下说法不正确的是 ___B___。
-
A.数据元素是数据的基本单位
-
B.数据项可由若干个数据元素构成
-
C.数据可由若干个数据元素构成
-
D.数据项是不可分割的最小标识单位
3、数据结构是指 __C____ 的集合以及它们之间的关系。
-
A.数据
-
B.计算方法
-
C.数据元素
-
D.结构
4、计算机所处理的数据一般具备某种内在联系,这是指 ___B___。
-
A.数据项和数据项之间存在某种关系
-
B.元素和元素之间存在某种关系
-
C.数据和数据之间存在某种关系
-
D.元素内部具有某种结构
5、在数据结构中,与所使用的计算机无关的是数据的 ___A___ 结构。
-
A.逻辑
-
B.物理
-
C.存储
-
D.逻辑和存储
6、数据的逻辑结构可以分为 ___B___ 两类。
-
A.内部结构和外部结构
-
B.线性结构和非线性结构
-
C.动态结构和静态结构
-
D.紧凑结构和非紧凑结构
7、数据的逻辑结构是指 __D__ 关系的整体。
-
A.数据类型之间
-
B.数据项之间逻辑
-
C.存储结构之间
-
D.数据元素之间逻辑
8、以下是数据结构中 __C____ 属非线性结构。
-
A.栈
-
B.队列
-
C.平衡二叉树
-
D.串
9、以下属于逻辑结构是 ___B___。
-
A.双链表
-
B.有序表
-
C.顺序表
-
D.单链表
10、以下不属于存储结构是 __B____。
-
A.邻接表
-
B.线性表
-
C.顺序表
-
D.单链表
11、在计算机中存储数据时,通常不仅要存储各数据元素的值,而且还有存储 __D____。
-
A.数据的处理方法
-
B.数据的存储方法
-
C.数据元素的类型
-
D.数据元素之间的关系
12、数据结构在计算机内存中的表示是指 ___B___。
-
A.数据元素之间的关系
-
B.数据的存储结构
-
C.数据的逻辑结构
-
D.数据结构
13、在数据的存储中,一个节点通常存储一个 __A____。
-
A.数据元素
-
B.数据结构
-
C.数据项
-
D.数据类型
14、在决定选取任何类型的存储结构时,一般不多考虑 __A____。
-
A.各节点的值如何
-
B.对数据有哪些运算
-
C.节点个数的多少
-
D.所用编程语言实现这种结构是否方便
15、数据在计算机的存储器中表示时,逻辑上相邻的两个元素对应的物理地址也是相邻的,这种存储结构称之为 ___C___。
-
A.链式存储结构
-
B.路基结构
-
C.顺序存储结构
-
D.以上都对
16、数据采用链式存储结构时,要求 ___D___。
-
A.所有节点占用一片连续的存储区域
-
B.每个节点有多少个后继就设多少个指针域
-
C.节点的最后一个数据域是指针类型
-
D.每个节点占用一片连续的存储区域
17、数据的运算 __A____。
-
A.与采用何种存储结构有关
-
B.是根据存储结构来定义的效率
-
C.必须用程序设计语言来描述
-
D.有算术运算和关系运算两大类
18、____D___ 不是算法的基本特性。
-
A.可行性
-
B.指令序列长度有限
-
C.确定性
-
D.在规定的时间内完成
19、计算机中算法指的是解决某一问题的有限运算序列,它必须具备输入、输出、__C_____。
-
A.确定性、有穷性和稳定性
-
B.易读性、稳定性和确定性
-
C.可行性、有穷性和确定性
-
D.可行性、可移植性和可扩充性
20、一个算法具有 ____A____ 等设计目标。
-
A.健壮性
-
B.确定性
-
C.至少有一个输入
-
D.可行性
- A.算法的可行性是指指令不能有二义性
- B.其他几个都是错误的
- C.算法最终必须由计算机程序实现
- D.算法等同于程序
- A.计算机硬件性能
- B.问题规模
- C.编译程序质量
- D.程序设计语言
- A.算法的执行时间和问题规模之间的关系
- B.算法是否具有较好地可读性
- C.算法中是否存在语法错误
- D.算法的功能是否符合设计要求
- A.问题规模与n^2成正比
- B.问题规模是n^2
- C.执行时间等于n^2
- D.执行时间与n^2成正比
- A.找出数据结构的合理性
- B.研究算法中输入和输出的关系
- C.分析算法的效率以求改进
- D.分析算法的易读性和文档性
- A.T2(n)=n^2-8000n
- B.T3(n)=-6000n
- C.T4(n)=20000log2n
- D.T1(n)=nlog2n+5000n
- A.T1(n)=1000log2n
- B.T2(n)=-1000log2n
- C.T4(n)=2nlog2n-1000log2n
- D.T3(n)=n^2- 1000log2n
(1)原地工作算法的含义是指不需要任何额外的辅助空间
(2)在相同的问题规模下n下,时间复杂度为O(nlog2n)的算法在执行时间上总是优于时间复杂度为O(n^2)的算法
(3)时间复杂度通常是指最坏情况下,估计算法执行时间的一个上限
(4)一个算法的时间复杂度与实现算法的语言无关
- A.(3)
- B.(1)、(2)
- C.(1)
- D.(1)、(4)
- A.队列
- B.二叉树
- C.栈
- D.线性表
for(i=1,s=0; i<=n; i++) {t=1;for(j=1;j<=i;j++) t=t*j;s=s+t;}
- A.O(n^4)
- B.O(n)
- C.O(n^2)
- D.O( n^3)
- A.O(n^2)
- B.O(n^3)
- C.O(n^4)
- D.O(n)
- A.675
- B.3375
- C.1350
- D.2025
void fun( int n) { int i=1; while (i<=n) i=i*2}
- A.O(n^2)
- B.O(nlog2n)
- C.O(n)
- D.O(log2n)
void fun( int n) { int i=1; while (i<=n) i=i*3}
- A.O(nlog3n)
- B.O(n)
- C.O(log3n)
- D.O(n^2)
- A.O(n^2)
- B.O(nlog2n)
- C.O(n)
- D.O(log2n)
36、数据元素是数据的最小单位。×
37、数据对象就是一组任意数据元素的集合。×
41、逻辑结构相同的数据,可以采用多种不同的存储方法。√
、42逻辑结构不相同的数据,必须采用多种不同的存储方法。×
43、逻辑结构相同的数据,在设计存储结构时,它们的节点类型也一定相同。×
44、数据的逻辑结构时指数据的各数据项之间的逻辑关系。×
45、算法的优劣与算法描述语言无关,但与所用的计算机有关。×
46、算法可以用不同的语言描述,如果用C或PASCAL语言等高级语言来描述,则算法实际上就是程序了。×
47、程序一定是算法。×
48、算法最终必须由计算机程序实现.×
49、算法的可行性是指指令不能有二义性。×
50、健壮的算法不会因非法输入数据而出现莫名其妙的状态。√