Сортировка Шелла, Принцип выборки подмассивов |
Сортировка Шелла, Принцип выборки подмассивов |
-=АнЮтА=- |
14.11.2006 14:19
Сообщение
#1
|
Пионер Группа: Пользователи Сообщений: 55 Пол: Женский Реальное имя: АнЯ Репутация: 0 |
Дело то в том,что мы просто попарно сравниваем эл-ты отстоящие др. от др. на определённый шаг и всё. А как мне помнится, мы должны из массива вытащить подмассив, его отсортировать и загнать опять в основной массив.
К примеру: 3 2 1 4 7 2 3 6 18 11 9 5 3 - отсоритрованный массив после шага 6 Берём шаг равный 3 и вытаскиваем подмассив: 3 4 3 11 3 Его сортируем и получаем: 3 3 3 4 11 Заносим в основной массив: 3 2 1 3 7 3 6 18 4 9 5 11 (потом переходим к следущему эл-ту(в нашем случае он равен 2) и опять вытаскиваем подмассив) Вот правильный алгоритм сортировки. - цитата из темы форума Меня тоже очень заинтересовал метод сортировки Шелла, но мне никак не понятно - если мы имеем шаг допустим 3, то ведь берем не только пары элементов 3 4 3 11 3, а как же 2 7 6 и 9, между ними ведь тоже шаг 3, ведь массив будет не однозначен с такми шагом. Или я недопонимаю? Подскажите пожалуйста, как именно происходит эта сортировка, мы все сравниваем элементы с таким шагои или которые только по порядку вытащим? У меня сложилось такое впечатление, что только которые "вытащатся " по порядку) |
SkIv |
18.11.2006 9:13
Сообщение
#2
|
Новичок Группа: Пользователи Сообщений: 26 Пол: Мужской Реальное имя: IVAN Репутация: 0 |
Дело в том что шаг не постоянный, допустим сначала у тебя он равен три, начинаеш сравнивать первый с четвертым, четвертый с седьмым и т.д., потом делаеш тоже сомое но со второго элемента, далее с третьего для шага три закончили, теперь уменьшаем шаг (например на один) и делаем тоже самое.
|
Текстовая версия | 20.10.2024 11:51 |