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

备考求助:嵌套循环最坏情况执行时间求解与思路验证

分析嵌套循环的最坏情况执行时间

Hey there! Let's walk through this nested loop scenario clearly to figure out its worst-case runtime.

First, let's translate your description into a concrete code example to make it easier to visualize (I'll use Python-like syntax here):

for i in range(n-1):
    # 内层循环的迭代次数:i=0时n-1次,i=1时n-2次,...,i=n-2时1次
    for j in range(n-1 - i):
        # 假设这里是单次O(1)的操作,不影响循环次数
        do_something()

计算总执行次数

To find the total number of times the inner loop runs (which equals the number of times do_something() executes), we need to sum up all the inner loop iterations:

  • When i=0: n-1 iterations
  • When i=1: n-2 iterations
  • ...
  • When i=n-2: 1 iteration

This is a classic arithmetic series sum. The formula for the sum of the first k positive integers is k*(k+1)/2—here, k is n-1 (since we're summing from 1 to n-1). Plugging that in, the total number of operations is:
(n-1)*n/2

确定时间复杂度

For worst-case runtime analysis, we focus on the asymptotic behavior (how the runtime grows as n gets very large). The expression (n-1)*n/2 expands to (n² - n)/2, which simplifies to O(n²) when we drop lower-order terms (-n) and constant factors (1/2).

Since there are no conditional checks that would reduce the number of iterations in any scenario (your description doesn't mention any early exits or variable-dependent skips), this sum represents the worst-case execution count—it's the maximum number of times the inner code can run for a given n.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 07:58:25