第一章 绪论
一、选择题
1.以下数据结构中哪一个是非线性结构?( )
A. 队列 B. 栈 C. 线性表 D. 二叉树
2.设某数据结构的二元组形式表示为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. 图型结构 3.下面程序的时间复杂为( )
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) B.O(n2) C. O(n3) D. O(n4) 4.数据的最小单位是( )。
A.数据项 B. 数据类型 C.数据元素 D. 数据变量
5.程序段s=i=0;do {i=i+1; s=s+i;}while(i<=n);的时间复杂度为( )。
23
A. O(n) B. O(nlog2n) C. O(n) D. O(n/2) 6.下列程序段的时间复杂度为( )。
for(i=0; i for(i=0; i A. O(m*n*t) B. O(m+n+t) C. O(m+n*t) D. O(m*t+n) 7.下列程序段的时间复杂度为( )。 i=0,s=0; while (s A. O(n1/2) B. O(n1/3) C. O(n) D. O(n2) 8.某程序的时间复杂度为(3n+nlog2n+n2+8), 其数量级表示为( )。 2 A.O(n) B.O(nlog2n) C.O(n) D.O(log2n) 9.线性表是一个具有n个()的有限序列。 A.表元素 B.字符 C.数据元素 D.数据项 10.从逻辑上可以把数据结构分为( ) A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 11.关于算法的描述,不正确的是( ) ...A.算法最终必须由计算机程序实现 B.所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 C.健壮的算法不会因非法的输入数据而出现莫名其妙的状态 D.算法的优劣与算法描述语言无关 12.在数据结构中,数据的基本单位是( ) A. 数据项 B. 数据元素 C. 数据对象 D. 数据文件 13.k=1; for(i=0;i for(j=0;j A[i][j]=k++; 上述程序段的时间复杂度为( ) 1 A.O(n2) B.O(n) C.O(2n) D.O(1) 14.for(i=0;i for(j=0;j A[i][j]=i*j; 上面算法的时间复杂度为( ) A.O(m2) B.O(n2) C.O(m×n) D.O(m+n) 15.从逻辑关系来看,数据元素的直接前驱为0个或1个的数据结构只能是( ) A.线性结构 B.树形结构 C.线性结构和树型结构 D.线性结构和图状结构 16.下列程序的时间复杂度为( ) i=0;s=0; while(s n) B.O( 2n) C.O(n) D.O(n2 ) 17.数据结构中所定义的数据元素,是用于表示数据的( ) A.最小单位 B.最大单位 C.基本单位 D.不可分割的单位 18.数据的四种基本存储结构是指( ) A.顺序存储结构、索引存储结构、直接存储结构、倒排存储结构 B.顺序存储结构、索引存储结构、链式存储结构、散列存储结构 C.顺序存储结构、非顺序存储结构、指针存储结构、树型存储结构 D.顺序存储结构、链式存储结构、树型存储结构、图型存储结构 19.下列四种基本的逻辑结构中,结构结点间不存在...任何逻辑联系的是( A.集合 B.线性结构 C.树形结构 D.图形结构 20.下列说法正确的是( ) A.数据是数据元素的基本单位 B.数据元素是数据项中不可分割的最小标识单位 C.数据可由若干个数据元素构成 D.数据项可由若干个数据元素构成 21.数据结构的基本任务是( ) A.逻辑结构和存储结构的设计 B.数据结构的运算实现 C.数据结构的评价与选择 D.数据结构的设计与实现 22.一个数组元素a[i]与( )的表示等价。 A. *(a+i) B. a+i C. *a+i D. &a+i 23.对于两个函数,若函数名相同,但只是( )不同则不是重载函数。A.参数类型 B. 参数个数 C.函数类型 24.若需要利用形参直接访问实参,则应把形参变量说明为( )参数 A. 指针 B.引用 C.值 25.下面程序段的时间复杂度为( )。 for(int i=0; i for(int j=0; j 2 ) A. O(m2) B. O(n2) C. O(m*n) D. O(m+n) 26.执行下面程序段时,执行S语句的次数为( )。 for(int i=1; i<=n; i++) for(int j=1; j<=i; j++) S; A. n2 B. n2/2 C. n(n+1) D. n(n+1)/2 27.下面算法的时间复杂度为( )。 int f( unsigned int n ) { if ( n==0 || n==1 ) return 1; else return n*f(n-1); } 2 A. O(1) B. O(n) C. O(n) D. O(n!) 28.组成数据的基本单位是( ) A.数据项 B.数据类型 C.数据元素 D.数据变量 29.如某数据结构的数据元素的集合为S={A,B,C,D,E,F,G},数据元素间的关系为R={,, B.O(n) C.O(nlogn2) D.O(n2) 31.算法分析的目的是( ) A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 C.分析算法的效率以求改进 D.分析算法的易懂性和文档特点 32.算法的计算量的大小称为计算的( )。 A.效率 B. 复杂性 C. 现实性 D. 难度 33.多项选择:一个算法具有( )等特点。 A.可行性 B.至少有一个输入量 C. 确定性 D. 健壮性 34.下面说法错误的是( ) (1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3) 35.在数据结构中,从逻辑上可以将之分为( )。 A.动态结构和静态结构 B. 紧凑结构和非紧凑结构 C. 内部结构和外部结构 D. 线性结构和非线性结构 36.以下数据结构中,哪一个是线性结构( )。 A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串 37.数据结构中数据元素之间的逻辑关系被称为( )。 A.数据的存储结构 B. 数据的基本操作 C. 程序的算法 D. 数据的逻辑结 3 构 38.在下面的程序段中,对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) 39.以下哪个数据结构不是多型数据类型( ) A.栈 B.广义表 C.有向图 D.字符串 40.下列数据中,( )是非线性数据结构。 A.栈 B. 队列 C. 完全二叉树 D. 堆 41.以下属于逻辑结构的是( )。 A.顺序表 B. 哈希表 C.有序表 D. 单链表 42.计算算法的时间复杂度是属于一种( )。 A.事前统计的方法B.事前分析估算的方法 C.事后统计的方法 D.事后分析估算的方法 43.可以用( )定义一个完整的数据结构: A.数据元素 B.数据对象 C.数据关系 D.抽象数据类型 44.多项选择:数据结构研究的内容涉及( )。 A.数据如何组织 B.数据如何存储 C.数据的运算如何实现 D.算法用什么语言来描述 45.算法分析的目的是( )。 A. 找出数据结构的合理性 B. 研究算法中的输入和输出的关系 C. 分析算法的效率以求改进 D. 分析算法的易懂性和文档性 46.多项选择: 设计一个“好”的算法应考虑达到的目标有( )。 A. 是可行的 B. 是健壮的 C.无二义性 D.可读性好 47.计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。 A.可执行性、可移植性和可扩充性 B.可执行性、有穷性和确定性 C.确定性、有穷性和稳定性 D.易读性、稳定性和确定性 48.具有线性结构的数据结构是(D ) A. 图 B.树 C.广义表 D.栈 49.算法分析的目的是( C ) A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 C.分析算法的效率以求改进 D.分析算法的易懂性和文档特点 二、填空题 1.通常从四个方面评价算法的质量:_________、_________、_________和_________。正确性 易读性 强壮性 高效率 3222.一个算法的时间复杂度为(n+nlog2n+14n)/n,其数量级表示为________。O(n) 3.数据的物理结构主要包括_____________和______________两种情况。顺序存储结构、链式存储结构 4.数据结构从逻辑上划分为三种基本类型:___________、__________和___________。线性结构,树型结构,图型结构 4
相关推荐: