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

关于大O符号与小o符号的后续问题:由$f(n)=O(n^2)$推导$ rac{f(n)}{n^2 \log^2 n} = o(\frac{1}{\log^2 n})$的困惑

关于大O符号与小o符号的后续问题:由$f(n)=O(n2)$推导$\frac{f(n)}{n2 \log^2 n} = o(\frac{1}{\log^2 n})$的困惑

你完全抓对了问题的关键——仅凭借$f(n)=O(n2)$这个条件,确实无法推导出$\frac{f(n)}{n2 \log^2 n} = o(\frac{1}{\log^2 n})$这个结论,你的等价转化推导也是完全正确的:

$$
\lim_{n\to\infty} \frac{\frac{f(n)}{n^2 \log^2 n}}{\frac{1}{\log^2 n}} = \lim_{n\to\infty} \frac{f(n)}{n^2}
$$

要让这个极限等于0,必须满足$f(n)=o(n2)$(也就是$f(n)$增长的速度比$n2$慢,最终和$n2$的比值趋于0),但$O(n2)$只要求$f(n)$被某个常数倍的$n2$上界限制,完全允许$f(n)$和$n2$同阶(比如$f(n)\sim c n^2$,其中$c$是一个非零常数),这时候上面的极限就是$c$而非0,自然不满足小o的定义。

我们可以直接计算你给出的求和式$f(n)$的实际阶,来验证这一点:

原求和式为:
$$
f(n) = \sum_{k=1}^n \frac{(k - 1)n^2}{n(n - k + 1)^2} = n \sum_{k=1}^n \frac{k-1}{(n - k + 1)^2}
$$

做换元$m = n - k + 1$(当$k=1$时$m=n$,$k=n$时$m=1$),则$k-1 = n - m$,求和范围变为$m=1$到$m=n$,代入后:
$$
f(n) = n \sum_{m=1}^n \frac{n - m}{m^2} = n\left(n \sum_{m=1}^n \frac{1}{m^2} - \sum_{m=1}^n \frac{1}{m}\right)
$$

我们知道:

  • $\sum_{m=1}^n \frac{1}{m2}$是收敛级数,极限为$\frac{\pi2}{6}$,所以$\sum_{m=1}^n \frac{1}{m^2} = \frac{\pi^2}{6} + O\left(\frac{1}{n}\right)$
  • $\sum_{m=1}^n \frac{1}{m}$是调和级数,阶为$\log n + O(1)$

代入化简后:
$$
f(n) = n\left(n \cdot \left(\frac{\pi^2}{6} + O\left(\frac{1}{n}\right)\right) - (\log n + O(1))\right) = \frac{\pi2}{6}n2 - n\log n + O(n)
$$

这说明$f(n)$实际上和$\frac{\pi2}{6}n2$是同阶的(即$f(n)=\Theta(n2)$),$\frac{f(n)}{n2}$的极限是$\frac{\pi^2}{6}$,而非0。所以原证明里的结论要么是笔误,要么是对$f(n)$的阶有错误的判断,或者你可能看错了原证明中的条件/结论。

备注:内容来源于stack exchange,提问作者Partial T

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 02:47:59