Предмет: Информатика, автор: katyshap2004

ПОМОГИТЕ ПОЖАЛУЙСТА!!!
Сказали написать код сортировки пузырьком, который будет начинаться с конца. Но он должен быть не отсортирован. (не знаю, как это возможно.. если невозможно, то, ПОЖАЛУЙСТА, напишите без этого)


katyshap2004: на языке Паскаль

Ответы

Автор ответа: anatolsjpoljakov
1

Ответ:

Вот пример кода на Python:

def bubble_sort_reverse(arr):

n = len(arr)

for i in range(n-1, 0, -1):

for j in range(n-1, n-i-1, -1):

if arr[j] > arr[j-1]:

arr[j], arr[j-1] = arr[j-1], arr[j]

return arr

Эта функция принимает список `arr` и сортирует его пузырьковой сортировкой, начиная с конца. Она работает так же, как обычная пузырьковая сортировка, только внешний цикл проходит от конца списка к началу, а внутренний цикл проходит от конца до текущего индекса внешнего цикла. Это позволяет отсортировать список в обратном порядке.


katyshap2004: Извините, я забыла написать, что надо на Паскаль надо
anatolsjpoljakov: сейчас сделаю
anatolsjpoljakov: program BubbleSortReverseUnsorted;

var
arr: array[1..6] of integer = (5, 3, 8, 2, 7, 1);
i, j, n: integer;
temp: integer;

begin
n := 6;
for i := n downto 2 do
begin
for j := n downto n-i+1 do
begin
if arr[j] > arr[j-1] then
begin
temp := arr[j];
arr[j] := arr[j-1];
arr[j-1] := temp;
end;
end;
end;

for i := 1 to n do
write(arr[i], ' ');
end.
Похожие вопросы
Предмет: Геометрия, автор: ilyasulykbek