![]() |
|
|
![]()
|
|
| Killer_13 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 12.1.2008 Где: Germany Репутация: нет Всего: 1 |
Здр,
Один из вопросов на который следует найти ответ. Значит сейчас изучаем различные алгоритмы сортировки, время сортировки и так д... Может кто знает, или знает как это сделать. 1. Как посчитать worst case? Например при bubble sort есть определенное число проходов цыкла и определенное число перестановок. Так вот в bubble sort worst case =n^2 Здесь мне наверное нужно считать проходы цыкла. В QuickSort worst case = n^2 - так вот собственно е чему я все это. Мне нужно найти такую последовательность элементов чтоб при сортировке Quick sort случился worst case. насколько я понимаю, то нужно считать сколько раз мы поменяли местами элементы? Припустим у меня 10 элементов, чтоб случился worst case нужно получить 100 в результате, что это за последовательность такая? Спасибо за ответ. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Берём и проходим алгоритм в обратном порядке, на каждом сравнении проводя обмен.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Killer_13 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 12.1.2008 Где: Germany Репутация: нет Всего: 1 |
При QuickSort даже в обратном порядке, n будет равно 10 или около того,
Вот алгоритм
И как в нем на каждом сравнении проводить обмен? Должна же быть такая последовательность! Тут не алгоритм нужно править, нужно править последовательность. тоисть алгоритм изменять неззя. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Что сравниваем, то и меняем. Добавлено через 48 секунд
Он не изменяется, а инвертируется. Получается "алгоритм медленного разупорядочивания". -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Killer_13 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 12.1.2008 Где: Germany Репутация: нет Всего: 1 |
Что-то не совсем понял, так что нужно сделать, чтоб не менять алгоритм?
|
|||
|
||||
| qwertinpop |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 23.4.2011 Репутация: нет Всего: нет |
надо чтобы выбирались всегда наибольшие или наименьшие значения int x = a[(unten+oben) / 2] здесь
|
|||
|
||||
| esperanto |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 194 Регистрация: 31.5.2003 Репутация: 2 Всего: 4 |
В рандомизированной быстрой сортировке нет худшего случая.
А в нерандомизированном, худший случай, это когда массив длиной к, делится на два массива длиной 1 и к-1 соответственно --------------------
B.Sc ->M.Sc.->Microsoft SDE-> (Ph.D. student + Intel SDE + psyсhology B.A) - > Skype SDET |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |