水知乎的时候发现了一篇回答,用很巧妙的方法证明了调和级数(H(n))的发散。
有哪些经典的反直觉数学结论? - 知乎 (zhihu.com)
呐,大体思路就是对于每个i,取([frac{1}{2^i+1},frac{1}{2^{i+1}}])这个区间,把每个数都缩小到(frac{1}{2^{i+1}}),这样区间的和为(frac{1}{2})。如果希望(H(n))大于某个给定的常数(a)就加(2a)个区间,即可让(H(n))的下界大于(a),因此是发散的。
简单推广一下,类似地去计算(H(n))的上界,也就是对于每个区间,把每个数都放大到(frac{1}{2^i}),这样区间和为(1)。那么想要让(H(n))上界+1就得让n翻倍,也就证明了(H(n)=O(log n))。