DEV Community


Posted on


102. Binary Tree Level Order Traversal (javascript solution)


Given the root of a binary tree, return the level order traversal of its nodes' values. (i.e., from left to right, level by level).


Time Complexity : O(n)
Space Complexity: O(n)

// BFS
var levelOrder = function(root) {
    if(!root) return []
    const queue = []
    const output = []
    while(queue.length) {
        // Remove all the current nodes in the queue and add each node's children to the queue
        const len = queue.length
        const row = []
        for(let i = 0; i < len; i++) {
            const cur = queue.shift()
            if(cur.left) queue.push(cur.left)
            if(cur.right) queue.push(cur.right)
            // Push the current node val to the row array
        // Push the current row array into the output array
    return output
Enter fullscreen mode Exit fullscreen mode

Oldest comments (0)

Why You Need to Study Javascript Fundamentals

The harsh reality for JS Developers: If you don't study the fundamentals, you'll be just another β€œCoder”. Top learnings on how to get to the mid/senior level faster as a JavaScript developer by Dragos Nedelcu.