|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.05.2022, 15:26 | #11 |
Новичок
Пользователь
Регистрация: 04.05.2022
Сообщений: 10
|
внутренний цикл сравнивает по порядку каждый элемент с последующим и сдвигает большее число вправо, а меньшее в лево. а наружный цикл повторяет эти действия что-бы меньшие элементы сдвигались дальше влево, до тех пор пока массив не упорядочится.
Вроде все логично. я даже расписал этот алготим вручную на бумаге в числах и массив упорядочился. Но вот результат в JVM почему-то отличается. не могу понять почему. |
04.05.2022, 15:33 | #12 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
но сравниваете по внешнему индексу
Начните с правильного вывода... Вы ведь выводите 0й, 1й, ... элементы на 0й, 1й, ... итерации. |
04.05.2022, 15:43 | #13 |
Новичок
Пользователь
Регистрация: 04.05.2022
Сообщений: 10
|
исправил индекс:
int[] arr = new int[] {1, 6, 3, 4, 2}; for (int i=0; i<5; i++){ for(int j=0; j<5-1; j++){ if (arr[j] > arr[j+1]) { int tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } } System.out.print(arr[i] + " "); } Результат сортировки: 1 3 3 4 6 Process finished with exit code 0 |
04.05.2022, 15:46 | #14 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,619
|
Давать результаты скриншотом - плохая идея. Кому охота слепить глаза, разбирая ошибки.
Моё предложение избавляет алгоритм от ненужной работы - зачем просматривать уже упорядоченные пары. Но он не устраняет автоматически все допущенные ошибки. не 5-1, а 5-i. И вообще, чисел 5 начиная с нулевого, значит, внешний цикл д.быть Код:
Последний раз редактировалось digitalis; 04.05.2022 в 15:55. |
04.05.2022, 15:50 | #15 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
|
04.05.2022, 15:57 | #16 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,619
|
Дык это же она, родимая, и есть
|
04.05.2022, 16:01 | #17 |
Новичок
Пользователь
Регистрация: 04.05.2022
Сообщений: 10
|
Не отпугнете, а подстегнете. я уже перечитал все эти статьи и про пузырьковый метод и про перебор элементов и даже моя жена подсказала еще один вариант. но ни чего не работает, чтобы я не применял )))) весь день вожусь. а некоторые алгоритмы еще и каждый раз разные результаты выдают.
не знаю в чем причина. В любом случае, большое спасибо за подсказки. Сегодня уже буду спать, а завтра снова буду штурмовать сортировку массивов )))) самое смешное что в когда еще в инсте учился, то легко щелкал такие задачки на паскале. а сейчас просто не могу сообразить где ошибаюсь ((( |
04.05.2022, 16:03 | #18 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
Вы мой пост так до конца и не дочитали?
|
04.05.2022, 17:32 | #19 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,619
|
Чудес на свете не бывает. Вот на том же Плоскале, точнее - Лазарусе - всё работает как надо.
Код:
6 3 4 2 == 1 2 3 4 6 |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
сортировка массива JAVA только профессионалы. | Volcozar | Общие вопросы по программированию, компьютерный форум | 3 | 04.05.2022 11:26 |
Пирамидальная сортировка на Java | SergejBrovkin | Общие вопросы по Java, Java SE, Kotlin | 0 | 11.01.2019 09:29 |
Быстрая сортировка(сортировка Хоара). Сортировка фрагмента массива [C++] | druger | Помощь студентам | 0 | 20.04.2012 15:49 |
Сортировка массива методами предсортировки и слияния, и пирамидальная сортировка. | lenny_24 | Помощь студентам | 2 | 17.04.2011 18:57 |
Сортировка двумерного массива Java. | Тёма Сашко | Помощь студентам | 7 | 21.02.2010 19:00 |