1 Star 0 Fork 0

Thinker-Maker/剑指offer

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
JZ77.cpp 1.29 KB
一键复制 编辑 原始数据 按行查看 历史
Thinker-Maker 提交于 2024-01-11 11:04 . 按之字形顺序打印二叉树
/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
* };
*/
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param pRoot TreeNode类
* @return int整型vector<vector<>>
*/
/**
先层序遍历,再翻转偶数行
*/
vector<vector<int> > Print(TreeNode* pRoot) {
// write code here
vector<vector<int>> ans;
if(!pRoot){
return ans;
}
queue<TreeNode *> que;
que.push(pRoot);
while(!que.empty()){
int cnt = que.size();
vector<int> tmp;
for(int i = 0; i < cnt; i++){
TreeNode* node = que.front();
que.pop();
tmp.push_back(node->val);
if(node->left){
que.push(node->left);
}
if(node->right){
que.push(node->right);
}
}
ans.push_back(tmp);
}
for(int i = 1; i < ans.size(); i += 2){
reverse(ans[i].begin(), ans[i].end());
}
return ans;
}
};
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/cpualuc/sword_offer.git
[email protected]:cpualuc/sword_offer.git
cpualuc
sword_offer
剑指offer
main

搜索帮助