В соответствии с этим кодом:В чем сложность следующего кода?
for (int i=1; i<=N; i*=2)
{
for (int j=1;j<=i;j++)
{
System.out.println("The value for i is "+i+" and the value for j is "+j);
}
}
Первый for-loop
будет работать log(n)
раз, сначала я подумал о 2n-1
для второго for-loop
, но он не работает для нечетных чисел.
Любые идеи? :)
Это количество времени, в течение которого выполняется первый цикл ('log (n)'), умноженный на количество выполняемых вторых циклов ('i'). – Charlie
Вы хотите асимптотическую сложность или количество итераций?Асимптотика n * log (n) –
Мне нужно подумать о количестве итераций для любой строки, чем найти нотацию O. – user3813409