![](https://i-blog.csdnimg.cn/blog_migrate/e72852b175b4f3b6400d1b69ca468150.png)
该题求级数的复杂度,简单解析如上图。
为什么0+0+1+2 * 2+3 * 4+4 * 8+…会是一个几何级数呢? 几何级数不是等倍数增长吗? 又是如何推导出O(logn*2^logn)呢?
问题详解
![](https://i-blog.csdnimg.cn/blog_migrate/590e3792d459c9076fc047013b691389.png)
可得S与等比数列求和的复杂度同阶,所以S可以当几何级数处理;而几何级数的复杂度与末项同阶且相等,所以S的复杂度为:
O((logn-1) * 2^logn+1)=O(logn * 2^logn)。
该题求级数的复杂度,简单解析如上图。
为什么0+0+1+2 * 2+3 * 4+4 * 8+…会是一个几何级数呢? 几何级数不是等倍数增长吗? 又是如何推导出O(logn*2^logn)呢?
问题详解
可得S与等比数列求和的复杂度同阶,所以S可以当几何级数处理;而几何级数的复杂度与末项同阶且相等,所以S的复杂度为:
O((logn-1) * 2^logn+1)=O(logn * 2^logn)。