算法设计与分析——第一章作业

一. 单选题(共22题,55分)

  1. (单选题)【单选题】算法的基本特性不包括()
    A. 无二义性
    B. 有输入输出
    C. 先进性
    D. 有穷性
    我的答案: C正确答案: C
    2.5分
  2. (单选题)【单选题】算法的定义是( )
    A. 算法不依赖数据结构
    B.
    算法是解题的步骤
    C.
    算法是计算方法
    D. 算法是计算机程序
    我的答案: B正确答案: B
    2.5分
  3. (单选题)【单选题】算法分析主要分析的是
    A. 算法设计的巧妙程度
    B. 算法中遗留的缺陷
    C. 算法运行时的时间效率
    D. 算法的设计难度
    我的答案: C正确答案: C
    2.5分
  4. (单选题)【单选题】算法的常见描述方式不包括( )
    A. 代码
    B. 流程图
    C. 伪代码
    D. 甘特图
    我的答案: D正确答案: D
    2.5分
  5. (单选题)【单选题】已知两个长度分别为m和n的升序链表,若将它们归并为一个长度为m+n的非降序链表,则最坏情况下的时间复杂度为( )
    A. O(max(m,n))
    B. O(min(m,n))
    C. O(m × n)
    D. O(m+n)
    我的答案: A正确答案: A
    2.5分
  6. (单选题)【单选题】允许使用递归程序设计方法的算法语言必须
    A. 将局部变量和形式参数都分配在系统堆里
    B. 将局部变量分配在系统堆里,将形式参数分配在系统栈里
    C. 将局部变量分配在系统栈里,将形式参数分配在系统堆里
    D. 将局部变量和形式参数都分配在系统栈里
    我的答案: D正确答案: D
    2.5分
  7. (单选题)【单选题】子程序(包括函数和方法)是用来被调用的,递归指的是
    A. 子程序向调用它的程序段返回结果的程序设计方法
    B. 子程序不向调用它的程序段返回结果的程序设计方法
    C. 不同子程序之间直接或间接调用的程序设计方法
    D. 同一个子程序直接或间接调用自己的程序设计方法
    我的答案: D正确答案: D
    2.5分
  8. (单选题)【单选题】分析算法的空间复杂性,应该分析
    A. 算法在执行过程中数据空间的占用量
    B. 算法运行代码占用的存储量
    C. 算法中定义的变量的数量
    D. 算法在执行过程中临时和辅助存储空间
    我的答案: D正确答案: D
    2.5分
  9. (单选题)【单选题】下面说法中,错误的是( )
    (1)算法原地工作的含义是指不需要任何额外的辅助空间

(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O()的算法

(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界

(4)同一个算法,实现语言的级别越高,执行效率就越低

A. (1)
B. (1)(4)
C. (1)(2)
D. (3)
我的答案: A正确答案: A
2.5分
10. (单选题)【单选题】渐进复杂性的含义是( )情况下的复杂性。
A. 在最佳输入情况下
B. 问题规模趋向于无穷大
C. 在最坏输入情况下
D. 平均各种输入之后
我的答案: B正确答案: B
2.5分
11. (单选题)【单选题】算法设计可以采用多种方式来描述,但不包括()
A. 接近计算机算法语言的伪代码
B. 计算机算法语言
C. E-R图
D. 人类自然语言
我的答案: C正确答案: C
2.5分
12. (单选题)【单选题】以下算法的时间复杂度为( )
void fun(int n)

{

int i=1; 

while (i<=n) 

{ 

    i=i*2; 

} 

}

A. O(n logn)
B. O(logn)
C. O(n)
D. O()
我的答案: B正确答案: B
2.5分
13. (单选题)【单选题】若某算法各语句执行频度之和为3n²+5n+9,则该算法的时间复杂度为

A. O(3)
B. O()
C. O(3+5n)
D. O(3+5n+9)
我的答案: B正确答案: B
2.5分
14. (单选题)【单选题】算法的常见描述方式不包括()
A. 甘特图
B. 流程图
C. 代码
D. 伪代码
我的答案: A正确答案: A
2.5分
15. (单选题)【单选题】背包问题: n个物品和1个背包。对物品i,其价值为vi,重量为wi,背包的容量为W。如何选取物品装入背包,使背包中所装入的物品的总价值最大?物品可以分割。该问题的贪心策略是( )
A. 单位重量的价值大的优先装入背包
B. 体积小的优先装入背包
C. 重量小的优先装入背包
D. 价值大的优先装入背包
我的答案: A正确答案: A
2.5分
16. (单选题)【选择题】以下关于算法的叙述中错误的是( ) 。
A. 一个正确的算法必须有输出
B. 算法可以用伪代码、 流程图等多种形式来描述
C. 一个正确的算法必须有输入
D. 用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码
我的答案: C正确答案: C
2.5分
17. (单选题)【单选题】渐进复杂性的含义是()情况下的复杂性。
A. 在最佳输入情况下
B. 平均各种输入之后
C. 在最坏输入情况下
D. 问题规模趋向于无穷大
我的答案: D正确答案: D
2.5分
18. (单选题)【单选题】“时间复杂度”通常指的是算法在哪种情况下的时间复杂度
A. 最坏
B. 平均
C. 最好
D. 各种情况的加权平均
我的答案: A正确答案: A
2.5分
19. (单选题)【单选题】针对简单程序设计, 以下叙述的实施步骤正确的是( ) 。
A. 编码、 确定算法和数据结构、 调试、 整理文档
B. 确定算法和数据结构、 编码、 调试、 整理文档
C. 确定算法和数据结构、 调试、 编码、 整理文档
D. 整理文档、 确定算法和数据结构、 编码、 调试
我的答案: B正确答案: B
2.5分
20. (单选题)【单选题】求整数n(n>=0)的阶乘的算法如下,其时间复杂度是( )
int fact(int n)

{

if(n<=1)

    return 1;

return n*fact(n-1);

}

A. O()
B. O(nlog(n))
C. O(n)
D. O(log(n))
我的答案: C正确答案: C
2.5分
21. (单选题)【单选题】什么是算法
A. 算法是计算机程序
B. 算法是解题的方法和步骤
C. 算法是计算方法
D. 算法是解题思路
我的答案: B正确答案: B
2.5分
22. (单选题)【单选题】算法的空间复杂性分析,通常只考虑
A. 算法在执行过程中所需的辅助变量占用的存储空间
B. 算法中定义的变量的数量
C. 算法代码占用的存储空间
D. 算法在执行过程中输入输出数据占用的存储空间
我的答案: A正确答案: A
2.5分
二. 多选题(共18题,45分)
23. (多选题)【多选题】关于循环算法和递归算法的对比,不正确的说法有
A. 通常递归算法会不易调试
B. 应该尽量避免使用递归
C. 循环一定比递归快
D. 不是所有的算法语言都支持递归
E. 递归和循环都是算法设计的重要手段
我的答案: BC正确答案: BC
2.5分
24. (多选题)【多选题】n个连续自然数a1…an连加和问题算法(利用等差数列求和公式)的输入可以是什么( )。
A. .an , n
B. a1, an , n
C. a1, an
D. a1,n
我的答案: ABCD正确答案: ABCD
2.5分
25. (多选题)【多选题】关于递归算法设计,不正确的说法有
A. 如果一个问题是用递归方式描述的,应该优先考虑设计递归算法
B. 如果一个问题是用递归方式描述的,应该优先考虑设计循环算法
C. 设计递归算法必须设计递归过程
D. 如果一个问题是用递推方式描述的,应该优先考虑设计递归算法
E. 设计递归算法必须设计递归终止条件和满足终止条件时的行为
我的答案: BD正确答案: BD
2.5分
26. (多选题)【多选题】关于循环算法和递归算法的对比,正确的说法有
A. 递归和循环都是算法设计的重要手段
B. 通常递归算法不易调试
C. 循环一定比递归快
D. 应该尽量避免使用递归
E. 不是所有的算法语言都支持递归
我的答案: ABE正确答案: ABE
2.5分
27. (多选题)【多选题】算法的基本特征有()
A. 输出
B. 输入
C. 有穷性
D. 确定性
E. 可行性
我的答案: ABCDE正确答案: ABCDE
2.5分
28. (多选题)【多选题】算法的基本特征有( )
A. 输入
B. 有限性
C. 确定性
D. 输出
E. 可行性
我的答案: ABCDE正确答案: ABCDE
2.5分
29. (多选题)【多选题】关于算法设计,不正确的是
A. 设计算法时存储数据的形式(数据结构)很重要
B. 详细设计算法之前要先建立算法的数学模型
C. 算法设计首先要充分理解要解决的问题
D. 算法不需要考虑通用性
E. 算法不需要正确性验证
我的答案: DE正确答案: DE
2.5分
30. (多选题)【多选题】关于算法分析的说法中,不正确的是
A. 算法分析包括对算法的代码存储空间的分析
B. 算法分析包括对算法的数据结构的复杂度的分析
C. 算法分析包括对算法的输入效率进行分析
D. 算法分析包括对算法的时间效率进行分析
E. 算法分析包括对算法的空间效率进行分析
我的答案: ABC正确答案: ABC
2.5分
31. (多选题)【多选题】关于递归算法设计,正确的说法有
A. 设计递归算法必须设计递归过程
B. 设计递归算法必须设计递归终止条件和满足终止条件时的行为
C. 如果一个问题是用递归方式描述的,应该优先考虑设计递归算法
D. 如果一个问题是用递推方式描述的,应该优先考虑设计递归算法
E. 如果一个问题是用递归方式描述的,应该优先考虑设计循环算法
我的答案: ABC正确答案: ABC
2.5分
32. (多选题)【多选题】对算法设计的理解,正确的包括
A. 不是所有的算法都很难设计
B. 所有的算法都很难设计
C. 相对于有没有好算法,有没有算法更重要
D. 算法不是程序,可以适当的允许错误
E. 程序流程图是最好的算法描述工具
我的答案: AC正确答案: AC
2.5分
33. (多选题)【多选题】关于算法对辅助空间占用的描述中,正确的有
A. 递归算法通常会占用比较多的辅助数据空间
B. 问题规模总是会影响算法的辅助空间占用量
C. 动态数据结构通常会有比较多的存储浪费
D. 循环算法常常会比递归算法占用更少的辅助空间
E. 复杂的数据结构总是会占用较多辅助空间
我的答案: AD正确答案: AD
2.5分
34. (多选题)【多选题】关于算法的描述方法,正确的包括
A. 描述算法的语句要注意不要有二义性
B. 算法描述可以使用程序设计语言
C. 算法描述是对问题的解决方法和步骤的记录
D. 算法的描述不应该使用复杂的逻辑运算
E. 算法描述必须使用伪代码
我的答案: ABC正确答案: ABC
2.5分
35. (多选题)【多选题】关于算法分析的说法中,正确的包括
A. 算法分析包括对算法的数据结构的复杂度的分析
B. 算法分析包括对算法的空间效率进行分析
C. 算法分析包括对算法的输入效率进行分析
D. 算法分析包括对算法的代码存储空间的分析
E. 算法分析包括对算法的时间效率进行分析
我的答案: BE正确答案: BE
2.5分
36. (多选题)【多选题】n个连续自然数a1…an连加和问题算法(利用等差数列求和公式)的输入可以是什么()。
A. a1, an
B. .an , n
C. a1,n
D. a1, an , n
我的答案: ABCD正确答案: ABCD
2.5分
37. (多选题)【多选题】对算法设计的理解,不正确的包括
A. 所有的算法都很难设计
B. 不是所有的算法都很难设计
C. 算法不是程序,可以适当的允许错误
D. 相对于有没有好算法,有没有算法更重要
E. 程序流程图是最好的算法描述工具
我的答案: ACE正确答案: ACE
2.5分
38. (多选题)【多选题】对算法执行时间的描述,不正确的包括
A. 好的算法对不同规模的问题的处理时间是一样的
B. 数据的排列形式有时也是影响影响算法执行时间
C. 好算法在慢的计算机上的执行时间,一定比,差的算法在快的计算机上执行时间短
D. 所谓好的算法的时间复杂度必须小于O(n)
E. 问题规模增大,执行时间会增加
我的答案: ACD正确答案: ACD
2.5分
39. (多选题)【多选题】关于算法设计,正确的包括
A. 详细设计算法之前要先设计算法的数学模型
B. 设计算法时存储数据的形式(数据结构)很重要
C. 算法不需要正确性验证
D. 算法不需要考虑通用性
E. 算法设计首先要充分理解要解决的问题
我的答案: ABE正确答案: ABE
2.5分
40. (多选题)【多选题】关于算法的描述方法,不正确的是
A. 描述算法的语句要注意不要有二义性
B. 算法描述可以任意使用自然语言
C. 算法的描述不应该使用复杂的逻辑运算
D. 算法描述必须使用算法语言
E. 算法描述可以部分使用自然语言
我的答案: BCD正确答案: BCD

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尚可签

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值