I've been learning how to program Binary Tree Search using Linked Lists in C++. Everything works fine and I understand how the Binary Tree works however I would like to be able to print the tree with the head on top and all the nodes following bellow as I try to demonstrate here:
[root or head]
[left] [right]
[left] [right] [left] [right]
I am using the Console to print the tree, therefore feel free to use 'cout' or 'printf'. I believe I need to set the width of the console but I'm not sure how to start.
Thanks, Y_Y
As sbi mentioned, making a left-aligned version is easier than a center-aligned one. But whichever alignment you choose your fundamental algorithmic approach should be:
Traverse the tree breadth-first. Do this by using a queue with the following algorithm:
(See http://www.cs.bu.edu/teaching/c/tree/breadth-first/ )
In order to print a center-aligned tree, also do the following (only works if the tree is complete. If it's not complete, the easiest thing to do is make a complete copy where every place that should have a node gets some kind of a null node):
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With