首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么C++ STL不提供任何“树”容器?

为什么C++ STL不提供任何“树”容器?
EN

Stack Overflow用户
提问于 2008-10-16 02:52:42
回答 10查看 233.8K关注 0票数 405

为什么C++ STL不提供任何“树”容器,最好的替代方法是什么?

我希望将对象的层次结构存储为树,而不是使用树作为性能增强……

EN

回答 10

Stack Overflow用户

发布于 2008-10-15 20:04:46

STL的理念是根据保证而不是容器的实现方式来选择容器。例如,您对容器的选择可能基于对快速查找的需要。不管您是否关心,容器都可以实现为单向列表--只要搜索速度非常快,您就会满意。这是因为您并没有接触到内部,而是使用迭代器或成员函数进行访问。您的代码不受容器实现方式的限制,而是取决于它的速度,或者它是否具有固定和定义的顺序,或者它在空间上是否有效,等等。

票数 53
EN

Stack Overflow用户

发布于 2011-04-25 19:24:58

如果您正在寻找RB树实现,那么stl_tree.h可能也适合您。

票数 47
EN

Stack Overflow用户

发布于 2008-10-15 19:00:23

map是基于red black tree的。您还可以使用其他containers来帮助您实现自己的树类型。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/205945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档