Tom
Tom

Reputation: 45144

Can a non-binary tree be tranversed in order?

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

The thing is that until now, we can't 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?")

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 ?

Upvotes: 13

Views: 6128

Answers (2)

Master Yoda
Master Yoda

Reputation: 587

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.

Upvotes: 1

deinst
deinst

Reputation: 18802

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.

Upvotes: 11

Related Questions