ac域名网站,南京品牌网站开发模板,微信小程序开发如何制作,wordpress搭建问答系统前言 题目#xff1a; 199. 二叉树的右视图 文档#xff1a; 代码随想录——二叉树的右视图 编程语言#xff1a; C 解题状态#xff1a; 成功解决#xff01; 思路
二叉树层序遍历问题的变种#xff0c;右视图即意味着二叉树每层的最后一个节点。
代码
/*** Definiti…前言 题目 199. 二叉树的右视图 文档 代码随想录——二叉树的右视图 编程语言 C 解题状态 成功解决 思路
二叉树层序遍历问题的变种右视图即意味着二叉树每层的最后一个节点。
代码
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:vectorint rightSideView(TreeNode* root) {queueTreeNode* q;vectorint res;if (root ! NULL) q.push(root);while (!q.empty()) {int size q.size();for (int i 0; i size; i) {TreeNode* node q.front();q.pop();if (i size - 1) res.push_back(node - val);if (node - left) q.push(node - left);if (node - right) q.push(node - right);}}return res;}
};