Сортировка данных при решении задач обработки информации влияет на такие характеристики программ, как скорость, надежность и эффективность. Сортировка данных, основанная на подсчете количества повторений для каждого значения ключа сортировки (сортировка методом подсчета), имеет существенные недостатки, например жесткие ограничения на размер ключа сортируемых данных, отсутствие привязки к сортируемым данным, что сужает область применения алгоритма. В работе идея сортировки методом подсчета развивается до полноценной сортировки, когда сортируются не только ключи, но и сопутствующие данные. Разработанный алгоритм не имеет ограничений на размер ключа сортировки. Представлены вариации предлагаемого алгоритма сортировки методом подсчета: с выделением дополнительной памяти под результирующий массив; без выделения дополнительной памяти (сортировка «на месте»); сортировка по короткому и длинному ключам. Для иллюстрации работы нового алгоритма представлен программный код на языке С++. Установлено, что сортировка «на месте» позволяет применять предложенный алгоритм в условиях ограниченной памяти.
1. Дорогов В. Г., Дорогова Е. Г. Программная реализация алгоритма сортировки данных методом подсчета. Свид. о гос. регистрации программы для ЭВМ, РФ, 2024661218, 16.05.2024, Бюл. № 5. 1 с. EDN: HGKOGA.
Dorogov V. G., Dorogova E. G. Software implementation of data sorting by counting method. Certificate of state registration of the computer program. RF. No. 2024661218, 16.05.2024, Bul. no. 5. 1 p. (In Russ.).
2. Стивенс Р. Алгоритмы: теория и практическое применение. 2-е изд. М.: Эксмо; 2021. 544 с.
Stephens R. Essential algorithms: A practical approach to computer algorithms using Python and C#. 2nd ed. Hoboken, NJ: Wiley; 2019. 800 p.
3. Дубинин Д. В. Информатика. Численные методы: учеб. пособие. Томск: Изд-во ТУСУРа; 2017. 116 с.
Dubinin D. V. Computer science: Numerical methods: study guide. Tomsk: TUSUR Publ.; 2017. 116 p. (In Russ.).
4. Фофанов О. Б. Алгоритмы и структуры данных: учеб. пособие. Томск: Изд-во Томского политехн. ун-та; 2014. 126 с.
Fofanov O. B. Algorithms and data structures: study guide. Tomsk: Tomsk Polytechn. Univ. Publ.; 2014. 126 p. (In Russ.).
5. Каширская Е. Н., Макаров М. А., Харьковский С. Е. Программирование алгоритмов сортировки: учеб. пособие. М.: МИРЭА – Рос. технол. ун-т; 2021. 1 электрон. опт. диск.
Kashirskaya E. N., Makarov M. A., Khar’kovskiy S. E. Sorting algorithms programming: study guide. Moscow: MIREA – Russ. Technol. Univ. Publ.; 2021. 1 CD-ROM.
6. Хорвик Р. Алгоритмы и структуры данных для начинающих: сортировка. Пер. с англ. Tproger. Ред. 20.02.2024. Available at:
https://tproger.ru/translations/sorting-for-beginners (accessed: 29.10.2025).
Horvick R. Sorting algorithms. Envato. 22.02.2014. Available at:
https://code.tutsplus.com/sorting-algorithms--cms-20670t (accessed: 29.10.2025).
7. Эриксон Дж. Алгоритмы. Пер. А. Снастин, П. Иванов. М.: ДМК Пресс; 2023. 526 с.
Erickson J. Algorithms. [S. l.]: Independent Publ.; 2019. 472 p.
8. Кнут Д. Э. Искусство программирования. 2-е изд. Т. 3: Сортировка и поиск. М.: Диалектика-Вильямс; 2019. 822 с.
Knuth D. Art of computer programming. 2nd ed. Vol. 3: Sorting and searching. Upper Saddle River, NJ: Addison-Wesley; 1998. 800 p.
9. Лафоре Р. Объектно-ориентированное программирование в C++. 4-е изд. М.: Питер; 2021. 923 с.
Lafore R. Object oriented programming in C++. 4th ed. Indianapolis, IN: Sams; 2008. 1040 p.