Ребят, а давайте здесь соберем алгоритмы сортировки, а то напрягает иногда по всему Интернету лазить. Начну сам.
Итак первый алгоритм, наверное, самый простой - сортировка вставкой. Суть алгоритма в том, что сначала формируется массив элементов в конце которого выделяется дополнительная ячейка, затем сравниваем элемент стоящий перед пустой ячейкой, если он, конечно, не первый. Если элемент больше то передвигаем стоящий в ячейки элемент и у нас получается смещение пустой ячейки. Когда мы дойдем до элемента который будет меньше, то в пустую ячейку вставляем анализируемый элемент. Все это можно реализовать так
Итак первый алгоритм, наверное, самый простой - сортировка вставкой. Суть алгоритма в том, что сначала формируется массив элементов в конце которого выделяется дополнительная ячейка, затем сравниваем элемент стоящий перед пустой ячейкой, если он, конечно, не первый. Если элемент больше то передвигаем стоящий в ячейки элемент и у нас получается смещение пустой ячейки. Когда мы дойдем до элемента который будет меньше, то в пустую ячейку вставляем анализируемый элемент. Все это можно реализовать так
| Код |
|---|
Var X,Y : array[1..10000] of integer;
K,i,j : integer;
Begin
{Определяем размер массива A (K) и заполянем его}
…
{дальше сам алгоритм сортировки}
for i:=1 to K do
begin
j:=i;
while (j>1) and (B[j-1]>A[i]) do
begin
B[j]:=B[j-1];
j:=j-1;
end;
B[j]:=A[i];
end;
{Выводим отсортированный массив B}
…
End. |
Изменено:
Артём Кулинич - 26.11.2009 20:01:55