- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一、单选题
1、对自然数1至n求和,如果将递推式f(n)=f(n-
1)+n(n1)转化成递归函数,则递归出口是?
A、f(1)=1
B、f(1)=0
C、f(0)=1
D、f(0)=0
解析:【喵呜刷题小喵解析】:根据题目中的递推式f(n)=f(n-
1)+n,我们可以得出这是一个从f(1)开始,逐步计算f(2)、f(3)、...、f(n)的过程。在
这个递推式中,每一项的值都依赖于前一项的值和当前的项数n。当n=1时,f(1)是
递推式的第一个项,不需要依赖其他项的值,因此f(1)是递归的出口。所以,选项
A
f(1)=1是正确的。选项B、C、D中的f(0)在递推式中并没有定义,因此不是正确的
递归出口。
2、对比两个求等差数列1+2+…+n的和的程序,其算法效率?
A、程序1比程序2高
B、程序2比程序1高
C、一样高
D、不能判断
解析:【喵呜刷题小喵解析】:对于求等差数列1+2+…+n的和,程序1和程序2的
算法效率可以通过比较它们的时间复杂度来判断。程序1可能是一个直接计算等差
数列和的公式,即S=
n(n+1)/2。这个公式的时间复杂度是O(1),因为它只进行了一次计算,不随n的增大
而增大。程序2可能是一个循环结构,逐个累加数列中的项。这个算法的时间复杂
度是O(n),因为它需要循环n次。因此,程序1的算法效率比程序2高。所以,正确
答案是A。
3、若以下程序段的运行结果为“##*”,则空格(1)、(2)处填写结果不可能为?
A、3,8
B、3,7
C、9,14
D、1,6
解析:【喵呜刷题小喵解析】:根据题目中的图片,空格(1)和空格(2)分别对
应A、B、C、D四个选项。由于程序段的运行结果为“##*”,我们可以推断出空格
(1)和空格(2)处的值应该满足某种条件,使得程序能够输出“##*”。首先,观
察A选项,如果空格(1)处填写“3”,空格(2)处填写“8”,则A选项的值为“3,8”
,符合题目要求。接着,观察B选项,如果空格(1)处填写“3”,空格(2)处填
写“7”,则B选项的值为“3,7”。此时,我们可以发现,B选项的值并不满足题目要求
,因为“3,7”无法使程序输出“##*”。然后,观察C选项,如果空格(1)处填写“9”
,空格(2)处填写“14”,则C选项的值为“9,14”,符合题目要求。最后,观察D选
项,如果空格(1)处填写“1”,空格(2)处填写“6”,则D选项的值为“1,6”,符合
题目要求。综上所述,只有B选项的值“3,7”无法使程序输出“##*”,因此,空格(1
)和空格(2)处填写结果不可能为B选项。
4、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后
每个月又生一对兔子。假如兔子都不死,要求输出一年内兔子的数量是多少。如果
采用递归算法来编程,则核心的递归逻辑应该是?
A、f(n)=n*f(n-1)
B、f(n)=f(n-1)+n
C、f(n)=f(n-1)+f(n-2)
D、f(n)=f(n-1)+(n-1)f(n-2)
解析:【喵呜刷题小喵解析】根据题目描述,每个月都会有一对兔子出生,而每对
兔子在出生后第3个月开始每个月又生一对兔子。所以,我们可以得到这样的规律
:*
第一个月初有一对兔子,第二个月初有一对兔子,第三个月初有一对兔子,第三个
月底又有一对兔子出生。*
第四个月初有一对兔子,第四个月底又有两对兔子出生。*
第五个月初有三对兔子,第五个月底又有三对兔子出生。*
以此类推。所以,我们可以得到递推公式:f(n)=f(n-1)+f(n-
2),其中n表示月份数,f(n)表示第n个月的兔子总数。因此,核心的递归逻辑应该
是f(n)=f(n-1)+f(n-2)。所以正确答案是C。
5、下列程序使用了哪种算法?
A、递推
B、递归
C、排序
D、分治
解析:【喵呜刷题小喵解析】:从图片中我们可以看到,程序似乎使用了递归的算
法。递归算法是一种解决问题的算法,它将问题分解为更小、更简单的子问题,直
到这些子问题可以直接解决,然后逐步返回结果,最终得到原问题的解。在这个程
序中,函数被调用了自身,这是递归的一个明显标志,因此答案是递归(B)。
6、以下几项关于函数的说法,错误的是?
A、函数是一段具有特定功能的语句组
B、调用函数时,参数传入的顺序必须与定义时保持一致
C、在一个程序中,函数的定
原创力文档


文档评论(0)