标签: for-loop time-complexity
我有两个for循环
for(int i = 2; i <= n / 2; i++){ for(int j = 2 * i; j <= n; j++){ } }
他们的时间复杂度是多少?我的想法是迭代的总数将是(n - 4)+(n - 6)+(n - 8)+ .... + 4 + 2 + 1.这是指时间复杂度是O( N)?谢谢
如果我将j ++改为j + = i怎么办?如何计算迭代次数?
答案 0 :(得分:0)
整体TC应为O(N^2)。
O(N^2)
O(N)表示内部循环的外部和O(N)。
O(N)
答案 1 :(得分:0)
您可以使用Sigma表示法有条不紊地进行:
答案 2 :(得分:-1)
你是对的。时间复杂度为O(n)