Binary Tree Right Side View
Given the root
of a binary tree, imagine yourself standing on the right side of it, return the values of the nodes you can see ordered from top to bottom.
Example 1:

Input: root = [1,2,3,null,5,null,4] Output: [1,3,4]
Example 2:
Input: root = [1,null,3] Output: [1,3]
Example 3:
Input: root = [] Output: []
Constraints:
- The number of nodes in the tree is in the range
[0, 100]
. -100 <= Node.val <= 100
Solution to to the above question
class Solution {
public:vector<int>v;
vector<int>ans;
vector<int> rightSideView(TreeNode* root) {
if(root==NULL){
return ans;
}
queue<TreeNode*>q;
q.push(root);
q.push(NULL);
while(!q.empty()){
TreeNode* temp=q.front();
q.pop();
if(temp==NULL){
v.push_back(ans[0]);
ans.clear();
if(!q.empty()){
q.push(NULL);
}
}
else{
ans.push_back(temp->val);
if(temp->left!=NULL){
q.push(temp->left);
}
if(temp->right!=NULL){
q.push(temp->right);
}
}
ans.clear();
}
return v;
}
};
0 Comments
If you have any doubts/suggestion/any query or want to improve this article, you can comment down below and let me know. Will reply to you soon.