Является ли наихудший сценарий для следующего алгоритма сортировки O (n ^ 2)?Я использовал основную теорему - PullRequest
0 голосов
/ 28 января 2019

Я должен найти сложность времени наихудшего случая для следующего алгоритма сортировки.Используя основную теорему, я получил O (n ^ 2).Я хотел проверить, был ли мой ответ правильным.

SomeSort (A, b, e)
   if e = b + 1 then
      if A[b] > A[e] then
         exchange A[b] and A[e]
      end if
   else if e > b + 1 then
       p ←− [(e-b+1)/3]   * the [] represents floor division
       SomeSort (A, b, e − p)
       SomeSort (A, b + p, e)
       SomeSort (A, b, e − p)
end if

1 Ответ

0 голосов
/ 28 января 2019

Периодичность выполнения равна

T(n) = 3T(2n/3) = 3T(n/(3/2)),

, следовательно, применяется случай 1 основной теоремы, а время выполнения равно

Theta(n^(log(3)/log(3/2))) = Omega(n^2.7).
...