美食网站网站建设定位,单位网站建设汇报,如何建设网站内容,太原网站建设需要多少钱题目#xff1a;
给定一个二叉树的 根节点 root#xff0c;想象自己站在它的右侧#xff0c;按照从顶部到底部的顺序#xff0c;返回从右侧所能看到的节点值。
方法#xff08;灵神#xff09;#xff1a;先递归右子树#xff0c;再递归左子树#xff0c;在递归的同…题目
给定一个二叉树的 根节点 root想象自己站在它的右侧按照从顶部到底部的顺序返回从右侧所能看到的节点值。
方法灵神先递归右子树再递归左子树在递归的同时记录一个节点个数或者说递归深度如果递归深度等于答案的长度那么这个节点就需要记录到答案中深度小于答案的长度不记录。
代码
class Solution {private final ListInteger ans new ArrayList();public ListInteger rightSideView(TreeNode root) {dfs(root,0);return ans;}private void dfs(TreeNode root, int depth) {if (root null)return;if (depth ans.size())ans.add(root.val);dfs(root.right, depth 1);dfs(root.left, depth 1);}
}