time-complexity - 如何找到具有多个循环和递归的代码段的时间复杂度
问题描述
我附上了两个我想找到时间复杂度的代码段。
对于第一个,我尝试使用各种 n 值,并认为它应该在 O(n) 左右。但是,由于有两个循环引用不同的变量,我对如何分析代码以找出复杂性有点困惑。代码段 1
1: i = j = k = 0
2:而 k 6 n 做
3: 我 = 我 + 1
4: j = j + i
5:k = k + j
6:对于 h = 1 到 j 做
7: F(i, j, k, h)
8:结束
9:结束时
第二个是关于递归的。由于我之前没有使用递归分析代码的经验,所以我真的不知道如何从这个开始。任何提示将不胜感激。代码段 2。谢谢。
1:函数 F(开始)
2:如果开始 > n 则
3:返回
4:如果结束
5: for k = begin to n − 1 do
6: F(k + 1)
7:结束
8:结束函数
解决方案
推荐阅读
- excel - 如何在VBA中的范围内均匀分布已知数字
- python - 有没有办法让我的足球投篮地图使用情节/小部件或其他东西进行互动?
- python - 根据另一个长度张量创建一个张量
- offset - catboost 回归器的 base_margin 或 init_score
- python - 如何从每年(1990-2011)中提取最后几天的值?
- android - 在选定设备中运行应用程序的命令
- xamarin.forms - ImageButton 未在 Xamarin 表单中触发命令绑定
- python - InvalidArgumentError:断言失败:[Condition x == y did not hold element-wise:] 错误
- c# - 无法加载文件或程序集 'System.Memory,版本 = 4.0.1.1,
- excel - VBA 自动下载 PDF 链接到桌面文件夹