Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can a non binary tree be tranversed in order?

We are dealing with a Most similar neigthbour algorithm here. Part of the algorithm involves searching in order over a tree.

The thing is that until now, we cant make that tree to be binary.

Is there an analog to in order traversal for non binary trees. Particularly, I think there is, just traversing the nodes from left to right (and processing the parent node only once?")

Any thoughts?

update

This tree will have in each node a small graph of n objects. Each node will have n children (1 per each element in the graph), each of which will be another graph. So its "kind of" a b tree, without all the overflow - underflow mechanics. So I guess the most similar in order traversal would be similar to a btree inorder traversal ?

Thanks in advance.

like image 766
Tom Avatar asked Aug 07 '10 03:08

Tom


2 Answers

Yes, but you need to define what the order is. Post and Pre order are identical, but inorder takes a definition of how the branches compare with the nodes.

like image 183
deinst Avatar answered Oct 02 '22 02:10

deinst


There is no simple analog of the in-order sequence for trees other than binary trees (actually in-order is a way to get sorted elements from a binary search tree).

You can find more detail in "The art of computer programming" by Knuth, vol. 1, page 336.

If breadth-first search can serve your purpose then you can use that.

like image 25
Master Yoda Avatar answered Oct 02 '22 02:10

Master Yoda