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

如何优化返回第N个偶数的列表推导式,是否需要预存偶数序列?

问题分析与优化方案

现有代码问题

  • 你当前的实现通过生成列表筛选偶数,时间复杂度为O(n),空间复杂度也为O(n),当n数值极大时会占用大量内存和运算时间,自然会触发超时。
  • 完全不需要用列表/字典预存偶数序列,这类有明确数学规律的序列可以直接通过公式计算得到结果,效率可以达到*O(1)*常数级。

实现逻辑

偶数从0开始的序列规律非常明确:

第N个偶数 = 2 * (N - 1)
验证测试用例:

  • 输入1:2*(1-1) = 0,符合预期
  • 输入3:2*(3-1) =4,符合预期
  • 输入100:2*(100-1)=198,符合预期
  • 输入1298734:2*(1298734-1)=2597466,符合预期

优化后代码

def nth_even(n):
    return 2 * (n - 1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 18:30:00