博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetCode(23):Binary Tree Zigzag Level Order Traversal ...
阅读量:5075 次
发布时间:2019-06-12

本文共 1249 字,大约阅读时间需要 4 分钟。

Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).

For example:

Given binary tree {3,9,20,#,#,15,7},

3   / \  9  20    /  \   15   7

return its zigzag level order traversal as:

[  [3],  [20,9],  [15,7]]

又是层序遍历!!!

/** * Definition for a binary tree node. * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:    vector
> zigzagLevelOrder(TreeNode* root) { queue
nodes; vector< vector
> result; vector
tmp; if(NULL==root) return result; nodes.push(root); bool flag=false; while(!nodes.empty()) { int length=nodes.size(); int i=0; while(i
val); if(tmpNode->left) nodes.push(tmpNode->left); if(tmpNode->right) nodes.push(tmpNode->right); nodes.pop(); i++; } if(flag) { reverse(tmp.begin(),tmp.end()); flag=false; } else { flag=true; } result.push_back(tmp); tmp.clear(); } return result; }};

转载于:https://www.cnblogs.com/zclzqbx/p/4687092.html

你可能感兴趣的文章
spring boot配置跨域
查看>>
BZOJ 1996 合唱队(DP)
查看>>
进击吧!阶乘——大数乘法
查看>>
安卓学习资料推荐-25
查看>>
Mysql数据库备份和还原常用的命令
查看>>
关于String s = new String("xyz");创建了几个字符串对象?的问题
查看>>
学习搭建S3C6410开发板的测试环境心得
查看>>
表单重复提交与解决
查看>>
HOJ---12500 Faculty Dividing Powers[数论]
查看>>
【例题 6-11 UVA-297】Quadtrees
查看>>
【hdu 2376】Average distance
查看>>
Apache网站服务器
查看>>
Codeforces #333 Div.2
查看>>
java_easyui体系之DataGrid(4)[转]
查看>>
import && require 的区别
查看>>
章节十五、7- 配置文件-Console Logging
查看>>
44.Android MD5Util
查看>>
网摘-获取屏幕dc并且将其画面显示在窗体中
查看>>
eclipse maven工程中src/main/resources目录下创建的文件夹是包图标的解决方法
查看>>
类变量,实例变量
查看>>