Binary Tree Zigzag Level Order Traversal [LeetCode]
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]
]
Solution: BFS
    vector<vector<int> > zigzagLevelOrder(TreeNode *root) {
        vector<vector<int> > result;
        if(root == NULL)
            return result;
        vector<TreeNode *> layer;
        layer.push_back(root);
        bool reverse = false;
        while(layer.size() >  ) {
            vector<int> tmp;
            vector<TreeNode *> new_layer;
            for(int i = ; i < layer.size(); i ++){
                TreeNode * node = layer[i];
                if(node->left != NULL)
                    new_layer.push_back(node->left);
                if(node->right != NULL)
                    new_layer.push_back(node->right);
                if(reverse)
                    tmp.push_back(layer[layer.size() -  - i]->val);
                else
                    tmp.push_back(node->val);
            }
            if(reverse)
                reverse = false;
            else
                reverse = true;
            result.push_back(tmp);
            layer = new_layer;
        }
    }
Binary Tree Zigzag Level Order Traversal [LeetCode]的更多相关文章
- Binary Tree Zigzag Level Order Traversal (LeetCode) 层序遍历二叉树
		
题目描述: Binary Tree Zigzag Level Order Traversal AC Rate: 399/1474 My Submissions Given a binary tree, ...
 - Binary Tree Zigzag Level Order Traversal——LeetCode
		
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...
 - Binary Tree ZigZag Level Order Traversal leetcode java
		
题目: Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from lef ...
 - 【LeetCode】 Binary Tree Zigzag Level Order Traversal 解题报告
		
Binary Tree Zigzag Level Order Traversal [LeetCode] https://leetcode.com/problems/binary-tree-zigzag ...
 - leetCode :103. Binary Tree Zigzag Level Order Traversal (swift) 二叉树Z字形层次遍历
		
// 103. Binary Tree Zigzag Level Order Traversal // https://leetcode.com/problems/binary-tree-zigzag ...
 - LeetCode 103. 二叉树的锯齿形层次遍历(Binary Tree Zigzag Level Order Traversal)
		
103. 二叉树的锯齿形层次遍历 103. Binary Tree Zigzag Level Order Traversal 题目描述 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再 ...
 - 【leetcode】Binary Tree Zigzag Level Order Traversal
		
Binary Tree Zigzag Level Order Traversal Given a binary tree, return the zigzag level order traversa ...
 - 【LeetCode】103. Binary Tree Zigzag Level Order Traversal
		
Binary Tree Zigzag Level Order Traversal Given a binary tree, return the zigzag level order traversa ...
 - [LeetCode] Binary Tree Level Order Traversal 与 Binary Tree Zigzag Level Order Traversal,两种按层次遍历树的方式,分别两个队列,两个栈实现
		
Binary Tree Level Order Traversal Given a binary tree, return the level order traversal of its nodes ...
 
随机推荐
- webService-cxf
			
官网必备包,自己研究api:http://cxf.apache.org/download.html 然后就是一个简单的例子了: 先服务端: package com.cxf; import javax. ...
 - Hello Spring Framework——依赖注入(DI)与控制翻转(IoC)
			
又到年关了,还有几天就是春节.趁最后还有些时间,复习一下Spring的官方文档. 写在前面的话: Spring是我首次开始尝试通过官方文档来学习的框架(以前学习Struts和Hibernate都大多是 ...
 - Linux-wget
			
Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS和FTP协 ...
 - 学习激动人心的C++ 11
			
1->创建7个Thread,跑个非常大的循环.观察CPU void func(string &name) { ;i<0xFFFFFFFF;i++) { //cout << ...
 - 浅析Java.lang.ProcessBuilder类
			
最近由于工作需要把用户配置的Hive命令在Linux环境下执行,专门做了一个用户管理界面特地研究了这个不经常用得ProcessBuilder类.所以把自己的学习的资料总结一下. 一.概述 P ...
 - php 自动绑定di容器实现
			
<?php class Bim { public function doSth() { echo __METHOD__.PHP_EOL; } } class Bar { protected $b ...
 - php变量 写时改变 写时复制
			
写时复制 $var = 1; $var2 = $var; #此时$var2 与 $var 指向同一个zval refcount = 2: $var = 2; # 此时$val 改变 所以 $var 与 ...
 - SQL锁死解决办法
			
SQL Server 表,记录 死锁解决办法 1. 先根据以下语句 查询 哪些表被 死锁,及 死锁的 spid SELECT request_session_id spid,OBJECT_NAME(r ...
 - 【Spring】简单的Spring AOP注解示例
			
引入相关包: <properties> <spring.version>3.0.5.RELEASE</spring.version> <aspectj.ver ...
 - Latex环境安装
			
安装latex环境 sudo apt-get install texlive-full 推荐使用texstudio编辑器,简单方便高效靠谱 sudo apt-get install texstudio ...