[#] [Из песочницы] Анализ использования избыточности данных в качестве требуемой дополнительной памяти при сортировке алгоритмом слияния
habrabot(difrex,1) — All
2016-09-27 17:30:03


## Алгоритмы сортировки


В этой статье речь пойдет о сравнении некоторых алгоритмов сортировки, реализованных на C++ для последовательности не упакованных BCD чисел большого размера.

![image][1]

Данный анализ я проводил в качестве летней практики в компании [«Программные технологии»][2].
Сортируемая последовательность не имеет заголовка, числа в ней имеют различную разрядность и хранятся без выравнивания. Между числами стоят разделители (0xFF).

Для осуществления сортировки с помощью библиотечной функции вводится дополнительный уровень данных – контейнер, содержащий указатели на области памяти, каждая из которых содержит одно BCD число. В сравнении участвуют:

> 1\. Сортировка слиянием;
> 2. Сортировка слиянием без использования буфера;
> 3. Естественная сортировка слиянием;
> 4. Естественная сортировка слиянием без использования буфера;
> 5. Модифицированная естественная сортировка слиянием;
> 6. Модифицированная естественная сортировка слиянием без использования буфера;
> 7. std::sort.[Читать дальше →][3]

[1]: https://habrastorage.org/files/76e/497/48c/76e49748cc984dd39b59ffac0acf2efe.png
[2]: http://www.softech.ru/home-ru.html
[3]: https://habrahabr.ru/post/311150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut