Помощь - Поиск - Пользователи - Календарь
Полная версия: помогите разобраться в сортировке
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
goatsee
пузырьковая сортировка, самая простая, но помогите я до конца ее не понял=(
Код

Type  
arrType = Array[1 .. n] Of Integer;
Procedure Bubble(Var ar: arrType; n: integer);

Var i, j, T: Integer;
Begin  
For i := 1 To n Do  {1}
For j := n DownTo i+1 Do     {2}                                  
If ar[Pred(j)] > ar[j] Then Begin {3}        
T := ar[Pred(j)]; ar[Pred(j)] := ar[j]; ar[j] := T   {4}  
End
End;

ясно, что за [1,1] и [1,2], и после сравнени, он произведет замену, так чтоли? за счет перебора 1 и 2 пройдется по всему массиву! на 2мерный массив, чего не хватает, все не могу понять?
volvo
Цитата
на 2мерный массив, чего не хватает
Корректного задания! Если одномерный массив можно отсортировать только по возрастанию/убыванию, то двумерный - по возрастанию/убыванию элементов в строке/столбце, сквозной сортировкой (сортировка в определенном направлении всех элементов, начиная от a[1, 1] и заканчивая a[n, n]), да мало ли как...

Я тебя просил привести массив ДО сортировки, и массив ПОСЛЕ нее (понимаешь, данные, ДАННЫЕ, а не описание - это идет сюда, "здесь не играть, тут рыбу заворачивали" (С)), ты же мне показал какой-то кусок программы. Чего он мне поможет, если ты не соизволил сказать, что ты вводишь-то в качестве данных...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.