Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
||||||
1 | ||||||
Сортировка методом прямого включения09.09.2010, 22:50. Показов 15054. Ответов 12
Метки нет Все метки)
(
Нашел блок-схему, написал по ней метод сортировки, но, первый элемент в нем не сортируется, помогите, пожалуйста, найти ошибку:
0
|
|
09.09.2010, 22:50 | |
Ответы с готовыми решениями:
12
Сортировка методом прямого включения, исправить код
Cортировка методом прямого слияния
|
Автор FAQ
![]() 1800 / 612 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
|
|
09.09.2010, 23:05 | 2 |
от 1 цикл. в C# массивы с 0.
0
|
Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
|
09.09.2010, 23:07 [ТС] | 3 |
Rockedit, пробовал менять, все равно первый элемент не отсортирован
0
|
Автор FAQ
![]() 1800 / 612 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
|
|
09.09.2010, 23:09 | 4 |
array[0] = x; вот из за этого.
1
|
Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
|
09.09.2010, 23:11 [ТС] | 5 |
Rockedit, да, действительно, без этого все сортируется нормально, но почему в лекциях указано так? И, раз есть эта строка, в том языке тоже массивы идут с 0. Удаление этой строки не "портит" метод прямого включения? =)
0
|
386 / 319 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
09.09.2010, 23:13 | 6 |
Посмотри на www.algolist.ru
0
|
Автор FAQ
![]() 1800 / 612 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
|
|||||||||||
09.09.2010, 23:13 | 7 | ||||||||||
Это ошибка в блок схеме, если знаете Delphi то,
Сортировка методом прямого включения. Входные данные - массив и его длина. Выходные данные - отсортированный массив. Примеры использования: begin arr[5] := 13; arr[8] := 28; arr[9] := 35; arr[3] := 56; arr[7] := 62; arr[0] := 98; arr[6] := 123; arr[4] := 748; arr[1] := 834; arr[2] := 933;
98 834 933 56 748 13 123 62 28 35 13 28 35 56 62 98 123 748 834 933 Код:
0
|
Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
|||||||||||
09.09.2010, 23:16 [ТС] | 8 | ||||||||||
А, нет, теперь появляется исключение Индекс находился вне границ массива. в выделенной строке:
Rockedit, нет, делфи к сожалению не знаю
0
|
Автор FAQ
![]() 1800 / 612 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
|
|
09.09.2010, 23:24 | 9 |
Попробуйте от 2 цикл
0
|
Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
||||||
09.09.2010, 23:43 [ТС] | 10 | |||||
Все равно, цикл while достигает -1
Добавлено через 18 минут Переписал тот метод с делфи, вроде бы понял все верно, но в цикле while снова эксепшен.
0
|
Автор FAQ
![]() 1800 / 612 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
|
||||||
09.09.2010, 23:47 | 11 | |||||
да видать и он кривой, просто если попробовать отсортировать 1 2 3 будет исключение...т.к. 1 < 2 j-- будет.
0
|
Кодило
251 / 179 / 23
Регистрация: 25.11.2009
Сообщений: 685
|
||||||
10.09.2010, 00:02 [ТС] | 12 | |||||
Вот, нашел алгоритм:
0
|
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 146
|
|
23.11.2017, 12:40 | 13 |
А помогите добавить к этому алгоритму счётчик перестановок.
0
|
23.11.2017, 12:40 | |
Помогаю со студенческими работами здесь
13
Написать программу, которая методом прямого выбора сортирует по убыванию введённый с клавиатуры массив Сортировка методом обмена и методом быстрой сортировки Сортировка линейным методом (методом отбора)
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |