Дайте точный и асимптотический ответ для псевдокода ниже.

for i <--- 1 step i <--- 2* i while i< n do 
  for j <--- 1 step j <---2* j while j<n do 
    if j = 2*i 
      for k = 0 step k <--- k+ 1 while k < n do 
        .... CONSTANT NUMBER OF ELEMENTARY OPERATIONS 
      end for 
    else 
      for k<--- 1 step k<-- 3*k while k<n do 
        ...CONSTANT NUBER OF ELEMENTARY OPERATIONS 
      end for 
    end if 
  end for 
end for

Каково время выполнения следующего фрагмента кода в зависимости от n?

"Точный ответ" относится к уравнению, связанному с кодом, ДО того, как вы определите время асимптотики.

1 ответ

Решение

Это звучит как домашнее задание, однако, учитывая некоторые соображения, асимптотическая сложность этого псевдокода должна быть O(n*log(n)),

Вы не можете точно оценить время работы, так как оно сильно зависит от вашей системы.

Другие вопросы по тегам