欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

每天一道LeetCode-----从右向左观察一棵二叉树,返回能看到的元素

发布时间:2024/4/19 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 每天一道LeetCode-----从右向左观察一棵二叉树,返回能看到的元素 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Binary Tree Right Side View

原题链接Binary Tree Right Side View

从右向左观察一棵二叉树,返回能看到的元素

遍历一遍即可,只记录靠右的元素

代码如下

/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:vector<int> rightSideView(TreeNode* root) {vector<int> views;scan(root, 0, views);return views;} private:void scan(TreeNode* root, int h, vector<int>& views){if(!root) return;if(h >= views.size())views.emplace_back(root->val);/* 先遍历右侧,这样就可以先选择右边的元素 */scan(root->right, h + 1, views);scan(root->left, h + 1, views);} };

总结

以上是生活随笔为你收集整理的每天一道LeetCode-----从右向左观察一棵二叉树,返回能看到的元素的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。