Динамически выделяемая память поступает из стека или кучи.Я слышал, что некоторые люди говорят, что куча - это связанный список, хотя если бы это было так, казалось бы, что это будет невероятно неэффективно.Например, если вы хотите выделить большой блок памяти, возможно, вам придется просмотреть большую часть списка, прежде чем найти что-то со свободным пространством.Кроме того, со временем количество блоков с небольшим объемом свободной памяти может становиться все больше и больше.В результате заявленные значения времени выполнения для больших алгоритмов некоторых алгоритмов могут быть неверными, поскольку они часто полагаются на постоянное распределение времени.Кто-нибудь может уточнить, как они реализованы и насколько они эффективны?