题解 | #按之字形顺序打印二叉树#
按之字形顺序打印二叉树
https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0
#include <vector>
class Solution {
public:
vector<vector<int> > Print(TreeNode* pRoot) {
vector<vector<int>> result;
queue<TreeNode*> que;
if (!pRoot)
return result;
que.push(pRoot);
int index = 0;
while (!que.empty()){
vector<int> path;
int len = que.size();
for (int i = 0; i < len; i++){
TreeNode* cur = que.front();
que.pop();
if (cur->left) que.push(cur->left);
if (cur->right) que.push(cur->right);
path.push_back(cur->val);
}
if (index % 2 == 1){
reverse(path.begin(), path.end());
}
index++;
result.push_back(path);
}
return result;
}
};

