Изменения

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

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

10 байт убрано, 17:30, 23 мая 2012
Нет описания правки
Процедуру слияния надо будет изменить, так, что-бы она записывала результат в результирующий массив (mas1)
<pre>sort(array * mas, int elementsAmount) array * mas1 = new array[elementsAmount]; for(int size = 1; size < elementsAmount; size *= 2) {
int start = 0;
forwhile (; (start + size) < elementsAmount; start += size * 2)
merge(mas + start, mas + start,
mas + start + size,
mas + start + size + min(size,elementsAmount - start - size)); start += size * 2; forwhile (; start < elementsAmount; ++start)
mas1[start] = mas[start];
++start; array * temp = mas1;
mas1 = mas;
mas = temp;
delete[] mas1;
</pre>
139
правок

Навигация