1 .数据结构是指( )的集合以及它们之间的关系。
A.数据元素
B.计算方法
C.逻辑存储
D.数据映像
解析:数据结构中讨论的数据是由数据元素构成的,这些数据元素之间存在某种关系,数据结构课程中主要讨论相邻关系。
2 . 数据结构是指数据元素的集合以及它们之间的 ( ) 。
A.结构
B.关系
C.运算
D.算法
解析:数据结构中讨论的数据是由数据元素构成的,这些数据元素之间存在某种关系,数据结构课程中主要讨论相邻关系。
3 . 计算机所处理的数据一般具备某种内在联系,这是指( ) 。
A.数据和数据之间存在某种关系
B.元素和元素之间存在某种关系
C.元素内部具有某种结构
D.数据项和数据项之间存在某种关系
解析:数据结构中讨论的数据是由数据元素构成的,这些数据元素之间存在某种关系。
4 . 数据结构是具有 ( ) 的数据元素的集合。
A.性质相同
B.相同物理结构
C.相互关系
D.数据项
5 . 在数据结构中,数据的逻辑结构是指 ( ) 。
A.数据类型
B.指针类型
C.数据元素之间的逻辑关系
D.数据元素之间的物理关系
解析:数据元素之间的逻辑关系构成了数据的逻辑结构。
6 . 在数据结构中,以下说法中不正确的是 ( ) 。
A.数据元素是数据的基本单位
B.数据项是不可分割的最小可标识单位
C.数据可由若干个数据元素构成
D.数据项可由若干个数据元素构成
解析:数据元素可由若干个数据项构成,而数据项不能再拆分,否则就没有意义了。
7 . 通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着( ) 。
A.数据元素具有同一特点
B.不仅数据元素所包含的数据项个数相同,而且对应数据项的类型要一致
C.每个数据元素值都相同
D.数据元素所包含的数据项的个数要相等
解析:因为只有同一类型的数据元素才能归类到同一种结构中,另外在计算机存储器中表示数据元素时,必须为它们定义相同的数据类型。
8 . 数据结构课程中讨论的数据一般具有内在的联系,这是指 ( ) 。
A.数据和数据之间存在一种或多种特定关系
B.数据元素和数据元素之间存在一种或多种特定关系
C.数据项和数据项之间存在一种或多种特定关系
D.同一数据中的所有数据元素值之间存在一种或多种特定关系
解析:数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
9 . 在含有n(n>2)个数据结点的数据结构中,开始结点是指 ( ) 的结点。
A.没有前趋结点
B.含有一个或多个前趋结点
C.没有后继结点
D.含有一个或多个后继结点
解析:开始结点是没有任何前趋结点的。
10 . 在含有n(n>2)个数据结点的数据结构中,终端结点是指 ( ) 的结点。
A.没有前趋结点
B.含有一个或多个前趋结点
C.没有后继结点
D.含有一个或多个后继结点
解析:终端结点是没有任何后继结点的。
11 . 数据结构通常采用二元组表示:B=(D,R),其中R表示 ( )的集合。
A.数据项
B.数据元素
C.数据元素关系
D.数据类型
解析:二元组(D,R)是数据逻辑结构的一种通用描述方法,其中D是数据元素的集合,R是数据元素关系的集合,在D上可以多种关系,每个关系用序偶来表示。
12 . 数据结构通常采用二元组表示:B=(D,R),其中D表示 ( )的集合。
A.数据项
B.数据元素
C.数据元素关系
D.数据类型
解析:二元组(D,R)是数据逻辑结构的一种通用描述方法,其中D是数据元素的集合,R是数据元素关系的集合,在D上可以多种关系,每个关系用序偶来表示。
13 . 数据结构通常采用二元组表示:B=(D,R),其中R用于表示数据元素关序的集合,每个关系又是 ( )的集合。
A.序偶
B.序列
C.数据结构
D.数据类型
解析:二元组(D,R)是数据逻辑结构的一种通用描述方法,其中D是数据元素的集合,R是数据元素关系的集合,在D上可以多种关系,每个关系用序偶来表示。
14 . 在数据结构中,与所使用的计算机无关的是数据的( )结构。
A.逻辑
B.存储
C.逻辑和存储
D.物理
解析:逻辑结构与存储结构无关,也就是与使用的计算机无关。
15 . 数据结构的研究内容不涉及 ( ) 。
A.数据如何组织
B.数据如何存储
C.数据运算如何实现
D.算法用什么语言来描述
解析:数据结构涉及三方面的内容:数据的逻辑结构(对应选项A),数据的存储结构(对应选项B)和运算(运算包括运算描述和运算实现,后者对应选项C)。
16 . 算法的计算量的大小称为计算的( )。
A.效率
B.复杂性
C.现实性
D.难度
17 . 算法的时间复杂度取决于( )
A.问题的规模
B.待处理数据的初态
C.A和B
18 . 计算机算法指的是( ),它必须具备可执行性、确定性、有穷性这三个特性。
A.计算方法
B.排序方法
C.解决问题的步骤序列
D.调度方法
19 . 计算机算法指的是解决问题的步骤序列,它必须具备( ) 这三个特性。
A.可执行性、可移植性、可扩充性
B.可执行性、确定性、有穷性
C.确定性、有穷性、稳定性
D.易读性、稳定性、安全性
20 . 一个算法( )。
A.必须是程序
B.是问题求解步骤的描述
C.不一定满足有穷性
D.以上都不对
21 . 下面关于算法说法错误的是( )
A.算法最终必须由计算机程序实现
B.为解决某问题的算法同为该问题编写的程序含义是相同的
C.算法的可行性是指指令不能有二义性
D.以上几个都是错误的
22 . 下面说法错误的是( ) (1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低
A.(1)
B.(1),(2)
C.(1),(4)
D.(3)
23 . 以下与数据的存储结构无关的术语是( )。
A.循环队列
B.链表
C.哈希表
D.栈
24 . 以下数据结构中,哪一个是线性结构( )?
A.广义表
B.二叉树
C.稀疏矩阵
D.串
25 . 以下那一个术语与数据的存储结构无关?( )
A.栈
B.哈希表
C.线索树
D.双向链表
26 . 在下面的程序段中,对x的赋值语句的频度为( ) FOR i:=1 TO n DO FOR j:=1 TO n DO x:=x+1;
A.O(2n)
B.O(n)
C.O(n2)
D.O(log2n)
27 . 程序段 FOR i:=n-1 DOWNTO 1 DO FOR j:=1 TO i DO IF A[j]>A[j+1] THEN A[j]与A[j+1]对换; 其中 n为正整数,则最后一行的语句频度在最坏情况下是( )
A.O(n)
B.O(nlogn)
C.O(n3)
D.O(n2)
28 . 以下哪个数据结构不是多型数据类型( )
A.栈
B.广义表
C.有向图
D.字符串
29 . 以下数据结构中,( )是非线性数据结构
A.树
B.字符串
C.队
D.栈
30 . 下列数据中,( )是非线性数据结构。
A.栈
B.队列
C.完全二叉树
D.堆
解析:
31 . 连续存储设计时,存储单元的地址( )。
A.一定连续
B.一定不连续
C.不一定连续
D.部分连续,部分不连续
32 . 以下属于逻辑结构的是( )。
A.顺序表
B.哈希表
C.有序表
D.单链表
33 . 编程题
输出N以内的所有质数
输入一个正整数N(N>1)
输出N以内的所有质数
C答案
#include
#include
int main()
{
int i,j,k,N,n=0;
scanf("%d",&N);
for(i=2;i<=N;i++)
{
k=(int)sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0) break;
if(j>k)
{
printf("%d ",i);
n++;
}
}
return 0;
}
CPP答案
#include
using namespace std;
int main(){
int n;
cin>>n;
int *a=new int[n];
for(int i=2;i<=n;i++)
a[i]=0;
for(int i=2;i<=n;i++)
if(a[i]==0)
for(int j=2;i*j<=n;j++)
a[i*j]=1;
for(int i=2;i<=n;i++)
if(a[i]==0)
cout<