Method: Algorithmable::DataStructs::Tree::BinarySearch#to_print
- Defined in:
- lib/algorithmable/data_structs/tree/binary_search.rb
#to_print ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/algorithmable/data_structs/tree/binary_search.rb', line 59 def to_print return if empty? queue = new_fifo_queue level = 0 next_level = 1 out = [] queue.enqueue @root until queue.empty? level += 1 node = queue.dequeue out << node.item << ' ' queue.enqueue node.left if node.left queue.enqueue node.right if node.right if level == next_level next_level += queue.size out << "\n" end end out.join end |