您的位置:首页 > 其它

Leetcode#107 Binary Tree Level Order Traversal II

2015-02-02 11:16 169 查看
原题地址

二叉树层次遍历,最后把遍历结果翻转一下即可

代码:

vector<vector<int> > levelOrderBottom(TreeNode *root) {
vector<vector<int> > res;
queue<TreeNode *> layer;

layer.push(root);
while (!layer.empty()) {
queue<TreeNode *> nextLayer;
vector<int> path;

while (!layer.empty()) {
TreeNode *front = layer.front();
layer.pop();
if (!front)
continue;
path.push_back(front->val);
nextLayer.push(front->left);
nextLayer.push(front->right);
}
if (path.size() > 0)
res.push_back(path);
layer = nextLayer;
}

vector<vector<int> > tra;
for (int i = res.size() - 1; i >= 0; i--)
tra.push_back(res[i]);

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