Какая структура данных используется для реализации динамической памяти?
Я всегда предполагалкуча (структура данных) используется для реализациикуча (динамическое распределение памяти), но я'мне сказали, что яЯ не прав.
Как работают кучи (например, тот, который реализован типичнымmalloc
подпрограммы или WindowsHeapCreate
и т.д.) реализовано, как правило? Какие структуры данных они используют?
Во время поиска в Интернете явиделтонны описания того, как реализовать кучис жесткими ограничениями.
Чтобы назвать несколько, яМы видели много описаний того, как реализовать:
И это'Забавно, все они избегают более сложного вопроса:
Как "нормальный", кучи общего назначения (как та, что позади,malloc
HeapCreate
) реализовано?
Какие структуры данных (и, возможно, алгоритмы) они используют?