Спасибо за развернутый ответ и ссылки. Мы-таки говорили на разных языках. Теперь я Вас понимаю.
esperanto писал(а):
"Использование тетта обозначений рекомендована Кнутом"
Cormen, Leiserson, Rivest писал(а):
Knuth [182] traces the origin of the O-notation to a number-theory text by P. Bachmann in 1892. The o-notation was invented by E. Landau in 1909 for his discussion of the distribution of prime numbers. The Ω and Θ notations were advocated by Knuth [186] to correct the popular, but technically sloppy, practice in the literature of using O-notation for both upper and lower bounds. Many people continue to use the O-notation where the Θ-notation is more technically precise. Further discussion of the history and development of asymptotic notations can be found in Knuth [182, 186] and Brassard and Bratley [46].
Я пытаюсь найти статью Кнута, на которую ссылается википедия. Но мне тем более интересно: использование
в русском издании «Искусства программирования на ЭВМ» — это артефакт перевода или так в оригинале (оригинал я тоже попробую найти, но это, скорее всего, займет больше времени)? (Впрочем, первое издание «Искусства программирования» вышло до этой «основопологающей» статьи, и, видимо, Кнут не счел нужным менять текст книги.)
[to advocate — отстаивать, защищать, пропагандировать. Похоже, еще один артефакт перевода]
esperanto писал(а):
called randomized quicksort
Я бы скорее перевел как рандомизированная быстрая сортировка. Вероятностная — это что-то probabilistic. Это что, принятый перевод?
esperanto писал(а):
Вот еще и третий артуменгт, в теории вероятностей, равномерное распределение, не лучше того же нормального или пуасоновского. А среднее время работы при пуасоновском распределении может отличаться от среднего времени равновероятного. Но если программа оперирует с потоком простейших событий, то Пуасоновский поток, куда лучше чем равновероятное. Также можно сказать, что нормальное распределение подходит больше равномерного, благодаря широкому использованию центральной предельной теоремы
Ну разумеется, говоря о среднем, формально говорят с уточнением о принимаемом распределении данных. Но для данных обычно известно характерное, наиболее популярное распределение. Скажем, средняя величина выигрыша при 10000 бросаниях монетки будет распределена по Гауссу (по Стьюденту), но сама последовательность — равномерно (особенно, если монетка честная). И так далее. Почему же нельзя говорить о среднем времени сортировки, предполагая равную вероятность входных последовательностей? Можно,
явно оговаривая это. И никаких двусмысленностей не возникает. Хотя предполагать равномерное распределение не всегда уместно.
Ваш же исходный пример мне живо напоминает анекдот о малолетнем гении из деткого сада: на любой,
сколь угодно сложный, вопрос (допускающий ответ да-нет) он отвечает правильно в целых 50% случаев! Все-таки правильность в среднем сродни средней температуре по больнице (включая морг) — корректна, но не информативна. В отличии от среднего времени работы, которое значимо.
Кстати, о сортировке и примерах.
Мне пришлось как-то раз поучать студента, который проверял правильность ответа путем проверки упорядочивания результата. Я порекомендовал ему сортировку за линейное время — записывать в ответ 1, 2, 3,… Его критерию правильности удовлетворяло.