СОРТИРОВКА ВСТАВКАМИ
Сортировка вставками – простой алгоритм сортировки, преимущественно использующийся в учебном программировании. К положительной стороне метода относится простота реализации, а также его эффективность на частично упорядоченных последовательностях, и/или состоящих из небольшого числа элементов. Тем не менее, высокая вычислительная сложность не позволяет рекомендовать алгоритм в повсеместном использовании.
Пример работы алгоритма сортировки вставками. Здесь, как и в предыдущем примере, последовательность сортируется по возрастанию.
procedure InsertSort(mas: arr; n: integer); begin for i:=1 to n-1 do begin nom:=i+1; temp:=mas[nom]; for j:=i+1 downto 2 do begin if (temp<mas[j-1]) then begin mas[j]:=mas[j-1]; nom:=j-1; end; mas[nom]:=temp; end; write('Результирующий массив: '); for i:=1 to n do write(mas[i], ' '); {вывод массива} end;
program InsertionSort; uses crt; type arr=array[ ] of integer; var mas: arr; i, j, temp, nom, n: integer; {процедура сортировки вставками} {основной блок программы} begin write('Количество элементов в массиве > '); read(n); for i:=1 to n do {ввод массива} begin write(i,' элемент > '); read(mas[i]); end; InsertSort(mas, n); {вызов функции} readkey; end.