Алгоритм
Алгоритм сортировки прямым включением таков:
for x:=2 to n do
x:=a[i]
включение х на соответствующее место среди a[1]...a[i]
end
В реальном процессе поиска подходящего места удобно, чередуя сравнения
сравнивается с очередным элементом a( j ), а затем либо х вставляется на свободное место, либо a( j ) сдвигается (передается) вправо и процесс "уходит" влево. Обратите внимание, что процесс просеивания может закончиться при выполнении одного из двух следующих различных условий:
1. Найден элемент a( j ) с ключом, меньшим, чем ключ у х.
2. Достигнут левый конец готовой последовательности.
Procedure StraightInsertion
Var
i,j:index; x:item;
begin
for i:=2 to n do
x:=a[i]; a[0]:=x; j:=1;
while x<a[j-1] do a[j-1]:=a[j-1]; j:=j-1; end;
a[j]:=x
end
end StraightInsertion