int func(int n){ int i = 0,sum = 0; while(sum < n) sum += ++i; return i; }
求时间复杂度
A. O(logn) B. O(n^1/2) C. O(n) D. O(nlogn)
++i, i = 1,2,3,4,5,···,k。
s = 1+2+3+4+5+···+k = k*(k+1)/2。
即此时 sum = k*(k+1)/2 >= n,(k+1)2 > 2n,得到k > (2n)1/2 - 1。
因此时间复杂度o(根号n)