C ++有没有好的树操作(模板)库?

时间:2009-11-25 02:09:33

标签: c++ tree

是否有适合C ++的优秀树操作(模板)库,可以执行二叉树等基本操作。

虽然从头开始编写二叉树并不困难,但我真的很惊讶找到一个可以随时使用的内容并不容易。

3 个答案:

答案 0 :(得分:2)

树是graphs的子集。那里有很多图形库,例如Boost Graph Library。您必须根据需要添加顶点,然后使用众多visitors中的任何一个来遍历树。

或者,您可以使用标准容器自定义一个(将根节点视为包含2个具有值的子节点,并且可能有2个其他子节点。)

答案 1 :(得分:1)

ACE有红黑树的实现。这很容易使用。

link text

答案 2 :(得分:1)

你需要什么树? STL或Boost中可能已经存在满足您需求的东西。例如:STL std::map<key,value>通常实现为平衡二叉树。

还有tree.hh实现类似STL的n路树。