You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求Test(n)函数在三类输入场景下的Θ表示时间复杂度

时间复杂度分析结果

函数基础逻辑

给定Test(n)函数的核心作用是查找大于1的最小正整数因数,原实现逻辑如下:

Function Test(n : Integer) : Integer
变量:
i : Integer
执行逻辑:
for i := 2 to n do
    if n mod i = 0 Return( i ) End-if
End-for
Return(n)

函数只要找到第一个能整除n的i就会立刻返回,不会执行后续循环。

三类场景下的最坏情况时间复杂度(Θ紧界表示)

  • n为偶数:遍历的第一个i值就是2,偶数都能被2整除,仅需要1次判断就返回,时间复杂度为Θ(1)
  • n为完全平方数:完全平方数的最小正因数一定不大于√n,最坏情况为该完全平方数是素数的平方(例如n=25=5²),此时最小因数就是√n,需要遍历到i=√n才会返回,时间复杂度为Θ(√n)
  • n为质数:质数不存在介于2到n-1之间的因数,必须遍历完所有2到n的取值才会返回,共执行n-1次判断,时间复杂度为Θ(n)

内容的提问来源于stack exchange,提问作者GenesisImpronto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 18:54:03