Домашние задания: Информатика

сортировка массива не понимаю

Лика ***
Лика ***
109
Сортировка пузырьком
Алгоритм состоит из повторяющихся проходов по сортируемому массиву. За каждый проход элементы последовательно сравниваются попарно и, если порядок в паре неверный, выполняется обмен элементов. Проходы по массиву повторяются N-1 раз или до тех пор, пока на очередном проходе не окажется, что обмены больше не нужны, что означает — массив отсортирован. При каждом проходе алгоритма по внутреннему циклу, очередной наибольший элемент массива ставится на своё место в конце массива рядом с предыдущим «наибольшим элементом», а наименьший элемент перемещается на одну позицию к началу массива («всплывает» до нужной позиции, как пузырёк в воде — отсюда и название алгоритма).

https://ru.wikipedia.org/wiki/Сортировка_пузырьком

Результат выполнения приведенного листинга:

Исходный массив: [1,3,8,2,2,4,2,1,3,9]
j = 1, i = 2: a = [1,3,2,8,2,4,2,1,3,9]
j = 1, i = 3: a = [1,3,2,2,8,4,2,1,3,9]
j = 1, i = 4: a = [1,3,2,2,4,8,2,1,3,9]
j = 1, i = 5: a = [1,3,2,2,4,2,8,1,3,9]
j = 1, i = 6: a = [1,3,2,2,4,2,1,8,3,9]
j = 1, i = 7: a = [1,3,2,2,4,2,1,3,8,9]
j = 2, i = 1: a = [1,2,3,2,4,2,1,3,8,9]
j = 2, i = 2: a = [1,2,2,3,4,2,1,3,8,9]
j = 2, i = 4: a = [1,2,2,3,2,4,1,3,8,9]
j = 2, i = 5: a = [1,2,2,3,2,1,4,3,8,9]
j = 2, i = 6: a = [1,2,2,3,2,1,3,4,8,9]
j = 3, i = 3: a = [1,2,2,2,3,1,3,4,8,9]
j = 3, i = 4: a = [1,2,2,2,1,3,3,4,8,9]
j = 4, i = 3: a = [1,2,2,1,2,3,3,4,8,9]
j = 5, i = 2: a = [1,2,1,2,2,3,3,4,8,9]
j = 6, i = 1: a = [1,1,2,2,2,3,3,4,8,9]

Если совсем уж грубо..
Наибольший по значению элемент перемещается в конец массива, потом наибольший из оставшихся на вторую с конца позицию и так далее по аналогии..
Полное перемещение происходит в цикле "for j", смещение на одну позицию (если нужно) в цикле "for i".
МК
Марина Котенко
18 091
Лучший ответ