Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тихоненко_Програмування.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
599.55 Кб
Скачать

4,2,7,9,1. Упорядкуємо його методом обміну.

Під час першого ( ) перегляду набору даних матимемо:

  • 1-й крок: 4 > 2 — умова істина, тому міняємо 4 і 2 місцями, отримаємо 2,4,7,9,1;

  • 2-й крок: 4 > 7 — умова хибна, обміну немає, послідовність залишається незміненою: 2,4,7, 9, 1;

  • 3-й крок: 7 > 9 — умова хибна, запишається 2,4,7, 9,1;

  • 4-й крок: 9 > 1, тому міняємо 9 і 1 місцями, отримаємо 2,4,7,1,9.

Під час першого перегляду було порівняння і два обміни.

Для розглядаємо вже набір з чотирьох елементів (2, 4, 7, 1) і застосовуємо до нього метод обміну, отримаємо 2,4,1,7,9.

Для. розглядаємо лише перші три елементи. Отримаємо 2,1,4,7,9.

Для розглядаємо перші два і отримуємо 1,2,4,7,9.

Наведемо програму впорядкування даних методом обміну.

program MetodObminu;

usescrt;

const n = 10;

var а : array [l..n] of integer;

i, j : integer;

с : integer;

begin

clrscr;

for i := 1 to n do

begin

write ('Введіть елемент масиву —');

readln(a[i]);

end;

for j := 1 to n- 1 do

for i := 1 to n-j do

if a[i]>a[i+ 1] then

begin

с := a[i + 1];

a[i + 1] := a[i];

a[i] := c;

end;

writeln('Упорядкований масив');

for i := 1 to n do writeln(a[i]);

end.

3. Сортування вставкою.

У методі вставок розглядають весь масив і перший елемент порівнюють з іншими, доки не знаходять меншого від нього. Перша позиція в масиві стає позицією вставки. Знайдений менший елемент і позицію вставки запам'ятовують. Усі елементи масиву, починаючи від позиції вставки до того, що передує знайденому, зміщують на одну позицію праворуч. Значення знайденого елемента записують у позицію вставки і порівнюють його з елементами, що залишилися. Якщо виявляють ще менший елемент, то повторюють метод вставки. І так доти, доки не доходять до кінця масиву — лише після цього перший елемент буде на місці. Далі розглядають масив без першого елемента і застосовують до нього описаний метод і т.д.

У методі вставок кількість операцій порівнянь та обміну однакова

Розглянемо невпорядкований набір чисел 4, 2, 9, 7, 1 та упорядкуємо його методом вставки.

Під час першого перегляду набору даних матимемо:

  • 1-й крок: 4 > 2, тому запам'ятовуємо число 2 і позицію числа 4, перемішуємо 4 праворуч, а 2 вставляємо на місце 4. Отримаємо 2,4,9, 7,1;

  • 2-й крок: 2 > 9 — умова хибна, маємо 2,4,9,7,1;

  • 3-й крок: 2 > 7 — умова хибна, маємо 2,4,9,7, 1;

  • 4-й крок: 2 > 1, тому запам'ятовуємо число 1 і позицію числа 2; переміщуємо 2,4,9, 7 праворуч, а 1 вставляємо на місце 2. Отримаємо 1, 2, 4, 9, 7.

Далі застосовуємо метод вставки до набору 2,4, 9,7 і т.д.

Наведемо програму впорядкування даних методом вставок.

program MetodVstavok;

usescrt;

const n = 10;

var a : array [1.. n] of integer;

i,j, к, с : integer;

begin clrscr;

for i := 1 to n do

begin

write ('Введіть елемент масиву —');

readln(a[i]);

end;

for i:= 2 to n do

begin

с := a[i]; {Вибираємо невпорядкований елемент)

j := l;

white с > a[i] do {Знаходимо позицію вставки)

j:=j+1

for k:=i-l downto j do

a[k + l]:=a[k];

a[j] := c;

end;

writeln('Упорядкований масив');

for i := 1 to n do write(a[i],' ')'.

readln

end.