102. 二叉树的层序遍历

2020-11-18  本文已影响0人  彼小星星空下看星星

给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。

解题思路以及知识点:广度优先搜索【队列实现】

/**
 * Definition for a binary tree node.
 * function TreeNode(val) {
 *     this.val = val;
 *     this.left = this.right = null;
 * }
 */
/**
 * @param {TreeNode} root
 * @return {number[][]}
 */
var levelOrder = function(root) {
    let result=[],queue=[root],temp,len;
    if(!root){
        return []
    }
    while(queue.length>0){
        result.push([])
        len=queue.length
        for(let i=0;i<len;i++){
            temp=queue.shift();
            if(temp){
                result[result.length-1].push(temp.val)
                temp.left&&queue.push(temp.left)
                temp.right&&queue.push(temp.right)
            }
        }
    }
    return result
};
上一篇下一篇

猜你喜欢

热点阅读