P(x,y,z){
print x
if(y!=x) print y
if(z!=x && z!=y) print z
}
Trivial Алгоритм здесь, значение x
, y
, z
выбираются случайным образом из {1,...r}
с r >= 1
. Я пытаюсь определить среднюю сложность этого алгоритма, и я измеряю сложность, основанную на количестве операторов печати.Среднего случай Сложности тривиального алгоритма
Наилучшим случаем здесь является T (n) = 1 или O (1), когда x=y=z
и вероятность того, что это 1/3.
В худшем случае все еще T (n) = 3 или еще O (1), когда x!=y!=z
, а вероятность равна 2/3.
Но когда дело доходит до математически получения среднего случай:
Sample Пространство п возможные входы, Вероятность над выборочным пространством является 1/п шанс Итак, как рассчитать среднюю сложность дела? (Здесь я рисую пробел ..)
Я знаю, что сложность должна быть O (1), но как вы прибудете при этом из уравнения выше? –
@spacker_lechuck: Все выражение состоит из констант. Вот почему это O (1). – rrufai
ohhhhhhh Я вижу сейчас, спасибо! –