固定大小缓冲区中的树实现

发布于 2024-09-29 17:57:25 字数 125 浏览 0 评论 0原文

(线性)缓冲区中确实存在哪些树的开源实现(每个节点有任意数量的子节点;节点包含小型数据类型,如 int 或指针(当然,除了特定于实现的索引数据))? (显然,树节点的最大数量受缓冲区大小的限制)

(用图代替树也可以)。

Which open source implementations of a tree (with arbitrary number of children per node; nodes containing a small data type like int or a pointer (additional to the implementation-specific indexing data, of course)) in a (linear) buffer do exist? (Obviously, the maximum number of tree nodes is bounded by the buffer size)

(Graph instead of tree would also be okay).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我不是你的备胎 2024-10-06 17:57:25

您可以采用允许有状态分配器的树的任何实现,并在固定大小的缓冲区之上实现自定义分配器。

尽管 C++ 标准不保证支持有状态分配器,但它们“在大多数情况下适用于大多数 STL 实现”。当在容器之间移动节点时,分配器状态通常只是一个问题。

如果您可以接受一个实例,则缓冲区也可以是模板参数。

You can take any implementation of a tree that allows a stateful allocator, and implement a custom allocator on top of your fixed size buffer.

Though the C++ standard doesn't guarantee support for stateful allocators, they work "with most STL implementations most of the time". Allocator state is usually only a problem when moving nodes between containers.

If you can live with one instance, the buffer can also be a template parameter.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文