In-order traversal of binary tree
by Alex Myronov
JavaScript
function Node(data) {
this.data = data
this.left = null
this.right = null
}
const inOrder = (tree) => {
let curr = tree
const stack = []
while (curr || stack.length) {
while (curr) {
stack.push(curr)
curr = curr.left
}
curr = stack.pop()
console.log(curr.data)
curr = curr.right
}
}
const tree = new Node(1)
tree.left = new Node(2)
tree.left.left = new Node(4)
tree.left.right = new Node(5)
tree.right = new Node(3)
tree.right.left = new Node(6)
tree.right.right = new Node(7)
inOrder(tree)