leetcode 199. Binary Tree Right Side View

Given 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.

For example:
Given the following binary tree,

   1            <---
 /   \
2     3         <---
 \     \
  5     4       <---

You should return [1, 3, 4].



class Solution {
public:
    vector<int> rightSideView(TreeNode* root) {
        vector<int>re;
		if(root==NULL)
			return re;
		vector<TreeNode*>quene;
		quene.push_back(root);
		while(!quene.empty())
		{
			re.push_back(quene.back()->val);
			vector<TreeNode*>newquene;
			for(int i=0;i<quene.size();i++)
			{
				TreeNode*node=quene[i];
				if(node->left!=NULL)
					newquene.push_back(node->left);
				if(node->right!=NULL)
					newquene.push_back(node->right);
			}
			quene=newquene;
		}
		return re;
    }
};

accepted

你可能感兴趣的:(LeetCode)