java - 在解决一些时间复杂度的问题时,卡在下面的代码片段中
问题描述
以下代码的时间复杂度是多少?
for(i=0;i<=n;i++)
for(j=0;j<=log i;j++)
print("hello world");
解决方案
总结内循环迭代的次数,我们得到,
log1 + log2 + log3 + log4 + ... + logN
= log(N!)
并且根据斯特林近似,log(N!) = O(N x log(N))
所以时间复杂度为O(NlogN)
推荐阅读
- azure - azure 函数资源管理器模板 parameters.json 的含义和相关值
- python - numpy pandas 的构建轮子失败
- ios - 如果有的话,编写 iOS 项目时的一般结构是什么?
- c++ - 如何将可变参数模板函数 *instance* 声明为朋友
- vb.net-2010 - Updating Access Database with VB 2010
- swift - 水平滚动视图在快速滚动期间上下跳跃
- android - Initializing LiveData from lateinit object
- powershell - Query and exclude softwares installed on remote computers
- python - Python:打印 4 个变量的排列
- android - How to hide activity if it's immediately being redirected