Значение средней сложности при использовании обозначения Big-O

Отвечая наэтот вопрос дебаты начались в комментариях о сложности QuickSort. Что я помню из моего университетского времени, так это то, что QuickSortO(n^2) в худшем случаеO(n log(n)) в среднем случае иO(n log(n)) (но с более жесткой границей) в лучшем случае.

Что мне нужно, это правильное математическое объяснение значенияaverage complexity четко объяснить, что это такое, тому, кто верит, что запись big-O может использоваться только для наихудшего случая.

Что я помню, если это для того, чтобы определить среднюю сложность, то вы должны учитывать сложность алгоритма для всех возможных входов, посчитать, сколько вырожденных и нормальных случаев. Если число вырождающихся случаев, деленное на n, стремится к 0, когда n становится большим, то можно говорить о средней сложности общей функции для нормальных случаев.

Это определение верно или определение средней сложности отличается? И если это правильно, может кто-то заявить это более строго, чем я?

Ответы на вопрос(5)

Ваш ответ на вопрос