是否有适合C ++的优秀树操作(模板)库,可以执行二叉树等基本操作。
虽然从头开始编写二叉树并不困难,但我真的很惊讶找到一个可以随时使用的内容并不容易。
答案 0 :(得分:2)
树是graphs的子集。那里有很多图形库,例如Boost Graph Library。您必须根据需要添加顶点,然后使用众多visitors中的任何一个来遍历树。
或者,您可以使用标准容器自定义一个(将根节点视为包含2个具有值的子节点,并且可能有2个其他子节点。)
答案 1 :(得分:1)
ACE有红黑树的实现。这很容易使用。
答案 2 :(得分:1)
你需要什么树? STL或Boost中可能已经存在满足您需求的东西。例如:STL std::map<key,value>
通常实现为平衡二叉树。
还有tree.hh实现类似STL的n路树。