1

我在 MCU 上有有限的固定内存量,我应该在上面存储一些对象。内存量非常小,我必须在程序开始时分配所有内存用于存储对象(我不能使用动态内存分配)。

每个对象由多个属性组成,我们可以随时为任何对象添加或删除任意数量的属性。属性长度是可变的,因此对象的长度可能会不时变化。修改此属性时,属性的大小可能会发生变化。

对存储对象的关键操作是搜索和读取属性值。

现在,我正在寻找解决我的问题的最佳方法和最佳数据结构(速度快、元数据不多、内存写入少、搜索开销小)。

任何想法?

4

1 回答 1

1

这看起来仍然像动态内存分配,您可能会编写一个轻量级版本的 malloc/free。

如果您对存储的对象有一些先验知识,也许您可​​以相应地构建您的内存,但在您的问题中似乎您正在专门寻找通用算法。

于 2012-08-12T18:45:19.043 回答