题库首页 › GESP等级认证(Python) › 题目 25931

以下函数 f1 的时间复杂度比函数 f2 的更高。 def f1(n): i = 1 while i < n: i *= 2 def f2(n): if n <= 1: return f2(n - 1)

A:正确
B:错误

正确答案:错误

答案解析

分析两个函数的时间复杂度需先完整识别各自的循环结构与控制变量变化规律。f1中i从1开始,每次循环乘以2,循环终止条件为i不小于n,其执行次数与log₂n成正比,故时间复杂度为O(log n)。f2中i同样从1开始,每次加1,直到i不小于n,循环次数与n成正比,时间复杂度为O(n)。比较两者需依据大O表示法的渐进增长速率,判断log n与n的增长关系。

试卷来源:202606 CCF-GESP编程能力等级认证Python五级真题

本卷相关题目

在线做题 同科目题库