Algorithm 如何计算两个变量在循环中不同增加的O(n)?

Algorithm 如何计算两个变量在循环中不同增加的O(n)?,algorithm,input,data-structures,execution-time,Algorithm,Input,Data Structures,Execution Time,我尝试了很多方法,创建了n,I,t值表。我注意到n=1循环0次返回,n=2循环1次,n=3或4循环2次,n=5,6或7循环3,n=8,9,10,11循环4次,我发现这些值完全可以理解,但我没有找到这个算法的解O(n) function func3(n) i = 1; t = 1; while i < n do i = i + t; t = t + 1; end while 函数func3(n) i=1; t=1; 而我 i=i+t; t=t+1; 结束时 循环中的语句重复,直到i

我尝试了很多方法,创建了n,I,t值表。我注意到n=1循环0次返回,n=2循环1次,n=3或4循环2次,n=5,6或7循环3,n=8,9,10,11循环4次,我发现这些值完全可以理解,但我没有找到这个算法的解O(n)

function func3(n)
i = 1;
t = 1;
while i < n do
i = i + t;
t = t + 1;
end while
函数func3(n)
i=1;
t=1;
而我
i=i+t;
t=t+1;
结束时

循环中的语句重复,直到
i
。 什么是
i
i
是自然数的总和
i=1+2+3+…x
。第一个
x
自然数之和的公式是
S=(x(x+1))/2
。 循环中的表达式是
i
。这个会议是
(x(x+1))/2
。当我们解这个不等式时,我们得到
x
n = 1, x<0,823 => number of iterations is 0
n = 2, x<1,436 => number of iterations is 1
n = 11, x<4,164 => number of iterations is 4