关于 sum 1/i 复杂度宽松估算的显然证明

前提
\(\frac{\mathrm{d} \ln x}{\mathrm{d} x} = \frac{1}{x}\)\(\ln x\)\(x > 0\) 递增。
\(\frac{\mathrm{d} 1/x}{\mathrm{d} x} = -\frac{1}{x^2}\)\(\ln x\)\(x > 0\) 的斜率变化率递减。


\[\frac{\ln (n + 1) - \ln n}{n + 1 - n} < lim_{\Delta \to 0} \frac{\ln (n + \Delta x) - ln n}{\Delta} = \frac{1}{n} \]

算两遍思想

\[\begin{aligned} \ln (n + 1) - \ln n &< \frac{1}{n} \\ \ln n - \ln (n - 1) &< \frac{1}{n - 1} \\ \ln (n - 1) - \ln (n - 2) &< \frac{1}{n - 2} \\ \cdots \\ \ln 2 - \ln 1 &< \frac{1}{1} \\ \textbf{两边求和} \\ \ln (n + 1) &< \sum_{i = 1}^{n} \frac{1}{i} \end{aligned} \]

\[\frac{\ln n - \ln (n-1)}{n - (n - 1)} > lim_{\Delta x \to 0} \frac{\ln (n - \Delta x) - \ln n}{\Delta} = \frac{1}{n} \]

继续基于算两遍思想差分

\[\begin{aligned} \ln n - \ln (n - 1) &> \frac{1}{n} \\ \ln (n - 1) - \ln (n - 2) &> \frac{1}{n - 1} \\ \ln (n - 2) - \ln (n - 3) &> \frac{1}{n - 2} \\ \cdots \\ \ln 2 - \ln 1 &> \frac{1}{2} \\ \textbf{两边求和} \\ \ln n + 1 &> \sum_{i = 1}^{n} \frac{1}{i} \end{aligned} \]

\[\ln (n + 1) < \sum_{i = 1}^{n} \frac{1}{i} < \ln n + 1 \]

于是 \(T(\sum_{i = 1}^{n} \frac{1}{i}) = O(\ln n)\)

posted @ 2024-03-21 22:10  zsxuan  阅读(33)  评论(0编辑  收藏  举报