您的位置:首页 > 其它

按之字形打印数据

2016-05-05 21:18 302 查看
class Solution {
public:
vector<vector<int> > Print(TreeNode* pRoot) {
vector<vector<int>> res;
if(pRoot == NULL)
return res;
stack<TreeNode*> num[2];
int flag[2];
int i=0;
num[0].push(pRoot);
// flag[0]=1;
while(!num[0].empty() || !num[1].empty())
{
vector<int> prin;
while(!num[i].empty())
{

prin.push_back(num[i].top()->val);
if(i==1)
{
if(num[i].top()->right)
num[1-i].push(num[i].top()->right);
if(num[i].top()->left)
num[1-i].push(num[i].top()->left);
}
else
{
if(num[i].top()->left)
num[1-i].push(num[i].top()->left);
if(num[i].top()->right)
num[1-i].push(num[i].top()->right);
}
num[i].pop();

}
res.push_back(prin);
i=1-i;
}
return res;
}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: