Сортировка вставками. Дана последовательность чисел a1, a2, …, an. Требуется переставить числа в порядке возрастания. Делается это следующим образом. Пусть a1, a2,…, ai упорядо-ченная последовательность, т.е. a1 ≤ a2 ≤…≤ ai. Берется сле-дующее число аi+1 и вставляется в последовательность так, чтобы новая последовательность была тоже возрастающей. Процесс производится до тех пор, пока все элементы от i+1 до n не будут перебраны. Примечание. Место помещения очередного элемента в сортировочную часть производить с помощью двоичного поиска. Двоичный поиск оформить в виде отдельной функции.
procedure BinaryInsertionSort(var Arr : array of Real; N : Integer); var B,C,E,I,J,K : Integer; Tmp : Real; begin i:=2; repeat b:=1; e:=i-1; c:=((b+e) div 2); while b<>c do begin if Arr[c-1]>Arr[i-1] then e:=c else b:=c; c:=((b+e) div 2); end; if Arr[b-1]<Arr[i-1] then begin if Arr[i-1]>Arr[e-1] then b:=e+1 else b:=e; end; k:=i; Tmp:=Arr[i-1]; while k>b do begin Arr[k-1]:=Arr[k-1-1]; dec(k) end; Arr[b-1]:=Tmp; inc(i); until not(i<=n); end.
помогите пожалуйста, что дальше делать, подскажите! заранее спасибо! нашел сортировку,а как дальше делать не знаю
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.