第一章 绪论(总时长56分26秒,共6讲)

MOOC第一章单元测试题

1、单选题:
执行下面的程序段的时间复杂度为(   )。‏for(int i=0;i<m;i++)‏   for(int j=0;j<n;j++)‏     a[i][j]=i*j;‏‍‏
选项:
A: O(m2)
B: O(n2)
C: O(m*n)
D: O(m+n)
答案: 【 O(m*n)

2、单选题:
执行下面程序段时,语句S的执行次数为(   )。‌for(int i=0;i<=n;i++)‌  for(int j=0;j<=i;j++)‌    S;‌‍‌
选项:
A: n*n
B: n*n/2
C: (n+1)*(n+2)/2 
D: n(n+1)/2
答案: 【 (n+1)*(n+2)/2 

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、单选题:
‎某算法的时间复杂度是O(n^2),表明该算法的(   )。‎
选项:
A: 问题规模是n^2
B: 问题规模与n^2正比    
C: 执行时间与n^2正比 
D: 执行时间等于n^2
答案: 【 执行时间与n^2正比 

9、单选题:
‍若需要利用形式参数直接访问修改实参值,则应将形参说明为(    )参数。‍
选项:
A: 指针
B: 值参数
C: 实地址
D: 地址参数
答案: 【 指针

10、单选题:
如下程序段:‏   for(i=1;i<=n-1;i++)‏    for(j=i+1;j<=n;j++) x=x+1;‏其中语句x=x+1执行的语句频度为(    )。‏​‏
选项:
A: n*n
B: n*(n-1)/2
C: n*(n+1)/2
D: n*(n-1)
答案: 【 n*(n-1)/2

11、单选题:
‌以下算法的时间复杂度为(   )。‌‌if (n >= 0) ‌‌{  ‌‌    for(int i = 0; i < n; i++) ‌‌        for(int j = 0; j < n; j++) ‌‌              printf("输入数据大于等于零n");    ‌‌} ‌‌else ‌‌{      ‌‌    for(int j = 0; j < n; j++) ‌‌          printf("输入数据小于零n"); ‌‌}‌‌‌
选项:
A: O(1)
B: O(n*n+n)
C: O(n)
D: O(n*n)
答案: 【 O(n*n)

12、单选题:
在数组A[0..n-1]中查找给定值K的算法大致如下:   ​i=n-1;            ​while(i>=0&&(A[i]!=k))       ​      i--;        ​return i;  ​该算法的时间复杂度为(    )。​‍​
选项:
A: O(n-i+1)
B: O(n-i)
C: O(n)
D: 无法确定
答案: 【 O(n)

13、单选题:
下面算法的时间复杂度为(    )。‎x=100; y=100;‎while(y>0) ‎     if(x>100) ‎        {x=x-10; y--;} ‎     else ‎          x++;‎‏‎
选项:
A: O(n)
B: O(100)
C: O(1)
D: O(n*n)
答案: 【 O(1)

14、单选题:
下面的算法是判断n是否为素数,其算法时间复杂度为(      )。‏void prime(int n)‏{ 判断n是否是素数 */‏   for (i=2; i<sqrt(n) && (n % i)!=0; i++) ;‏ ‏   if (i>sqrt(n))   ‏         printf("%d is a prime number", n);  ‏   else  ‏        printf("%d is not a prime number", n);‏} ‏‍‏
选项:
A: O(n)
B: O(1)
C: O(sqrt(n))    sqrt表示对n取根方
D: O(n-i)
答案: 【 O(sqrt(n))    sqrt表示对n取根方

15、多选题:
​一个抽象数据类型包括(    )。‎
选项:
A: 数据对象
B: 数据对象中各元素间的关系
C: 数据
D: 一组基本操作
答案: 【 数据对象;
数据对象中各元素间的关系;
一组基本操作

16、多选题:
​以下属于数据元素间基本逻辑结构的是(    )。​
选项:
A: 集合
B: 线性
C: 树
D: 图
答案: 【 集合;
线性;
树;

17、多选题:
‏以下属于算法特性的是(    )。‍
选项:
A: 0个或多个输入
B: 至少一个输出
C: 正确性和有限性
D: 可行性
答案: 【 0个或多个输入;
至少一个输出;
正确性和有限性;
可行性

18、多选题:
‏算法设计的要求包括(   )。​
选项:
A: 正确性
B: 可读性
C: 健壮性
D: 高效率和低存储
答案: 【 正确性;
可读性;
健壮性;
高效率和低存储

19、多选题:
‍数据元素在计算机的存储映像包括(   )。‏
选项:
A: 顺序存储
B: 非顺序存储
C: 图结构
D: 树结构
答案: 【 顺序存储;
非顺序存储

20、判断题:
​具有线性结构的数据元素只能顺序存储,非线性结构的元素只能非顺序存储。‎​‎
选项:
A: 正确
B: 错误
答案: 【 错误

21、判断题:
‌算法就是程序。​‌​
选项:
A: 正确
B: 错误
答案: 【 错误

22、判断题:
‏算法的优劣与算法描述的语言无关。‍‏‍
选项:
A: 正确
B: 错误
答案: 【 正确

23、判断题:
‏算法的可行性是指每一条指令具有明确含义。‍‏‍
选项:
A: 正确
B: 错误
答案: 【 错误

剩余75%内容付费后可查看

发表评论

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