https://leetcode-cn.com/problems/binary-tree-right-side-view/
给定一个二叉树的 根节点 root
,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。
/**
* @param {TreeNode} root
* @return {number[]}
*/
var rightSideView = function(root) {
//层序遍历,取每层最右值即可
if(root===null){
return []
}
let stack=[root]
let result=[]
while(stack.length){
let len=stack.length
let layerVal=[]
for(i=0;i<len;i++){
let node = stack.shift()
layerVal.push(node.val)
if(node.left){ stack.push(node.left) }
if(node.right){ stack.push(node.right) }
}
result.push(layerVal[layerVal.length-1])
}
return result
};