soroosh.strife
soroosh.strife

Reputation: 1191

c++ library useful for making trees

I want to use vocabulary trees (which is not necessarily binary) in my program and I already have a general idea on how to create a tree class but I was wondering if there are any c++ libraries that are useful for that purpose. If not I would like to know about the methods I can use to manage my tree faster( add/remove/access nodes), like storing them in consecutive memory locations.

thank you

Upvotes: 2

Views: 2750

Answers (2)

doctorlove
doctorlove

Reputation: 19242

Though std::map and std::set get mentioned in oleskii's link they are binary trees. Any n-ary tree can be rearranged to a binary tree, but that may not help you, since the re-organisation will take time. The boost graph libraries are more general purpose.

A quick google for n-ary trees C++" just turned up treetree

"Treetree is a header-only C++ library that implements a generic tree-structured container class according to STL conventions"

If you want to make you current tree implementation faster, you should measure where it is currently slow.
Check simple things, e.g. make sure you pass by reference rather than by copy.

Upvotes: 2

piokuc
piokuc

Reputation: 26184

You can use The Boost Graph Library to model all kinds of trees.

Upvotes: 2

Related Questions