Comments 13
Это худшая реклама курса, которую только можно придумать. Любое объяснение должно быть простым и понятным. Это объяснение простое, но не понятное
P.S.
P.P.S.
И вообще, нет смысла рассуждать о размере константы под O, потому что O(1) и O(1000000) являются одним и тем же классом сложности
P.S.
Сортировка называется быстрой, потому что константа, которая скрывается под знаком O на практике оказывается достаточно небольшой, что привело к широкому распространению алгоритма на практике.под O не константа — константа под O только в одном классе сложности — O(1)
P.P.S.
И вообще, нет смысла рассуждать о размере константы под O, потому что O(1) и O(1000000) являются одним и тем же классом сложности
f(n) = O(g(n)), если существует номер n0 и константа c > 0 такие, что для любого n начиная с n0 имеет место соотношение: f(n) < c * g(n).
Это определение О-большого.
Это определение О-большого.
Вот до этой статьи я был целевая аудитория этого курса. После этого у меня уже нет желания идти на курс и вот почему:
- Статья на хабре напоминает отписку, а заначит автор так же готовиться к занятиям.
- Хабр позволяет форматировать не только текст, но и код, а также вставлять формулы. Ни первого, ни второго, ни третьего нет в статье, а что я тогда увижу в презентации к уроку?
- Объяснение на пальцах! Вот за этим идут на курсы и идут не только те, кто хотят получить новые знания, но и те, кто хочет структурировать имеющуюся информацию.
- На удивление у ваших конкурентов и то лучше расписан сам алгоритм.
- Быстрый поиск выдал еще две хорошие статьи на эту тему.
Вот зачем мне идти к вам и платить деньги, если мне придётся для понимания опять самому всё искать?
А ещё не понятно на чём написан код ((((
sort(l, r):
if r - l = 1:
return
m = partition(l, r)
sort(l, m)
sort(m, r)
Всё сказанное ИМХО (не путать с IMHO).
Советую почитать статьи непосредственного преподавателя данного курса, например вот эту habr.com/ru/company/otus/blog/521034
Не пивот, а опорный элемент.
Когда Хабр из сайта для IT-профессионалов, обсуждающих серьезные и интересные проблемы, стал рекламной площадкой для вайтивайтишных курсов и школьников-умею-в-формы-на-ангуляре-пишу-свой-сайт-на-пхп-и-жабаскрипте?
Стыдно за него последние несколько лет.
Статьи вроде этой уже есть на Википедии, и нечего им оттуда переезжать.
Могу предложить свой собственный алгоритм сортировки: http://emery-emerald.narod.ru/Cpp/2E1562.html. Это куда интересней, чем обсуждать давно известное :).
На TimSort похоже.Да, похоже! Я этого не знал.
Вот, что пишет https://ru.wikipedia.org/wiki/Timsort по этому поводу:
Основная идея алгоритма
– По специальному алгоритму входной массив разделяется на подмассивы.
– Каждый подмассив сортируется сортировкой вставками.
– Отсортированные подмассивы собираются в единый массив с помощью модифицированной сортировки слиянием.
Принципиальные особенности алгоритма в деталях, а именно в алгоритме разделения и модификации сортировки слиянием.
Да, основные различия в деталях реализации. У меня опубликована рабочая версия, демонстрирующая работу внешней сортировки реального dbf-файла. Кроме этого, вычислена средняя длина упорядоченной подпоследовательности в случайной, равномерно распределенной последовательности (равная 2e – 3) и показана наихудшая (зигзагообразная) последовательность для сортировки этим алгоритмом. Также показана зависимость работы алгоритма от двоичного разложения количества упорядоченных подпоследовательностей в искомой последовательности. У Тима Петерсона этого в явном виде нет, но есть субалгоритм «Галоп», которого нет у меня.
В общем, я думаю, что используются похожие идеи, отличающиеся в нюансах. Но приоритет за Тимом, поскольку его публикация 2002 года, а моя 2010 (см. также https://www.codeproject.com/Articles/92761/Work-C-Algorithm-of-External-Natural-Merge-Sort-wi)
А с учетом широкого использования алгоритма TimSort, автору публикации можно было включить его в свой курс обучения. Причем разные источники помогут лучше понять суть данной сортировки.
Sign up to leave a comment.
Быстрая сортировка