Изменения

Перейти к: навигация, поиск

Сортировка слиянием

43 байта добавлено, 13:37, 9 июня 2012
Слияние двух массивов
Алгоритм слияния формально можно записать следующим образом:
<pre>// слияние двух массивов частей одного массива с помощью временного
// left - левая граница, right - правая, middle - середина
merge(array a, int left, int middle, int right)
i = left, j = middle, k = 0;
array temp = new array[sizeof(a) + sizeof.size(b)];
while i <= middle and j < right
temp[k++] = if (a[j] < a[i]) ? temp[k++] = a[j++] : ; else temp[k++] = a[i++];
while i <= middle
temp[k++] = a[i++];
// в конце a[1..k] это будет отсортированный массив
</pre>
 
===Рекурсивный алгоритм===
139
правок

Навигация