Black-White Array: новая структура данных с O(log N) аллокаций
Black-White Array (BWA) — это упорядоченная структура данных с амортизированным временем операций вставки/поиска/удаления и используемых участков памяти . Преимущества: • Амортизированное время вставки/удаления/поиска сравнимое с реализацией BTree от Google ; • Низкое количество аллокаций памяти при операциях вставки - меньше давления на сборщик мусора, ниже фрагментация памяти; • Массивы под капотом: данные лежат рядом, что улучшает кэшируемость процессором и скорость обхода/доступа к данным; • Позволяет хранить элементы с одинаковыми ключами - не нужно использовать дополнительные структуры для группировки таких элементов; • Низкий оверхед на хранение служебной информации - экономия памяти по сравнению с другими структурами данных; • Удобен для вставки батчами; • Простая сериализация и десериализация; Подробности
https://habr.com/ru/articles/984184/
#алгоритмы #структуры_данных #computer_science #множество #orderedset #производительность #optimization #allocation #индексы #оптимизация