LintCode-71.二叉树的锯齿形层次遍历
二叉树的锯齿形层次遍历
给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行)
样例
给出一棵二叉树 {3,9,20,#,#,15,7},
返回其锯齿形的层次遍历为:
[
[3],
[20,9],
[15,7]
]标签
领英 二叉树 队列 二叉树遍历 宽度优先搜索
code
/**
 * Definition of TreeNode:
 * class TreeNode {
 * public:
 *     int val;
 *     TreeNode *left, *right;
 *     TreeNode(int val) {
 *         this->val = val;
 *         this->left = this->right = NULL;
 *     }
 * }
 */
class Solution {
    /**
     * @param root: The root of binary tree.
     * @return: A list of lists of integer include
     *          the zigzag level order traversal of its nodes' values
     */
public:
    vector<vector<int>> zigzagLevelOrder(TreeNode *root) {
        // write your code here
        vector<vector<int> > order;
        queue<TreeNode*> queue;
        int len,leaver=1;
        if(root == NULL) {
            return order;
        }
        queue.push(root);
        len = queue.size();
        while(!queue.empty()) {
            vector<int> base;
            len = queue.size();
            while(len--) {
                TreeNode *tmp=queue.front();
                base.push_back(tmp->val);
                queue.pop();
                if(tmp->right)
                    queue.push(tmp->right);
                if(tmp->left)
                    queue.push(tmp->left);
            }
            if(leaver%2 == 1)
                reverse(base.begin(),base.end());
            order.push_back(base);
            leaver++;
        }
        return order;
    }
};												
											LintCode-71.二叉树的锯齿形层次遍历的更多相关文章
- lintcode二叉树的锯齿形层次遍历 (双端队列)
		
题目链接: http://www.lintcode.com/zh-cn/problem/binary-tree-zigzag-level-order-traversal/ 二叉树的锯齿形层次遍历 给出 ...
 - lintcode: 二叉树的锯齿形层次遍历
		
题目 二叉树的锯齿形层次遍历 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 样例 给出一棵二叉树 {3,9,20,#,#,15,7}, 3 / \ ...
 - LeetCode:二叉树的锯齿形层次遍历【103】
		
LeetCode:二叉树的锯齿形层次遍历[103] 题目描述 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行). 例如:给定二叉树 ...
 - LeetCode 103. 二叉树的锯齿形层次遍历(Binary Tree Zigzag Level Order Traversal)
		
103. 二叉树的锯齿形层次遍历 103. Binary Tree Zigzag Level Order Traversal 题目描述 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再 ...
 - LeetCode103. 二叉树的锯齿形层次遍历
		
103. 二叉树的锯齿形层次遍历 描述 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行). 示例 例如,给定二叉树: [3,9,2 ...
 - Java实现 LeetCode 103 二叉树的锯齿形层次遍历
		
103. 二叉树的锯齿形层次遍历 给定一个二叉树,返回其节点值的锯齿形层次遍历.(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行). 例如: 给定二叉树 [3,9,20,null ...
 - 【二叉树-BFS系列1】二叉树的右视图、二叉树的锯齿形层次遍历
		
题目 199. 二叉树的右视图 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值. 示例: 输入: [1,2,3,null,5,null,4] 输出: [1, ...
 - leetcode 102. 二叉树的层次遍历 及 103. 二叉树的锯齿形层次遍历
		
102. 二叉树的层次遍历 题目描述 给定一个二叉树,返回其按层次遍历的节点值. (即逐层地,从左到右访问所有节点). 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / ...
 - [Swift]LeetCode103. 二叉树的锯齿形层次遍历 | Binary Tree Zigzag Level Order Traversal
		
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...
 
随机推荐
- 解决h5底部输入框在ios被软键盘顶飞 软键盘消失还下不来
			
好吧,其实不是顶飞,准确点说应该是h5页面fiexed定位在底部的输入框在ios软键盘弹起的时候软键盘跟输入框有时会有一段悬空的距离,无法紧贴.在安卓机子上则没有这样的情况. 解决方法是通过h5的sc ...
 - CASE WHEN 批量更新
			
单个值: UPDATE categories SET display_order = CASE id WHEN 1 THEN 3 WHEN 2 THEN 4 WHEN 3 THEN 5 END WHE ...
 - Hive(9)-自定义函数
			
一. 自定义函数分类 当Hive提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数. 根据用户自定义函数类别分为以下三种: 1. UDF(User-Defined-Functi ...
 - 网站用户行为分析——Hadoop的安装与配置(单机和伪分布式)
			
Hadoop安装方式 Hadoop的安装方式有三种,分别是单机模式,伪分布式模式,伪分布式模式,分布式模式. 单机模式:Hadoop默认模式为非分布式模式(本地模式),无需进行其他配置即可运行.非分布 ...
 - c语言实现通讯录管理系统(c课程设计)
			
工具:Visual C++6.0 说明: 本系统基于C语言实现班级通讯录管理系统,为大一时学习C语言刚入门所做的课程设计.功能包括增.删.查.改等,非常适合初学者练手.通讯录包括的个人信息有姓名.学号 ...
 - Ubuntu adb 报错:no permissions (user in plugdev group; are your udev rules wrong?);
			
Ubuntu 下 adb 报错: caoxinyu@caoxinyu-ThinkPad-T470p:~/Android/Sdk/platform-tools$ ./adb devices List o ...
 - 抽样分布(3) F分布
			
定义 设U~χ2(n1), V~χ2(n2),且U,V相互独立,则称随机变量 服从自由度为(n1,n2)的F分布,记为F~F(n1,n2),其中n1叫做第一自由度,n2叫做第二自由度. F分布的概率密 ...
 - xencenter迁移云主机方法
			
问题:POOL中计算节点内存不足. 解决方法:1.为计算节点添加内存(费用高)2.将部分资源迁移到其它POOL中. 方法: 1.选择要迁移的虚拟机 2.选择保存路径 这里可以看到可以批量导出: 注意: ...
 - 一个小白的测试环境docker化之路
			
本文来自网易云社区 作者:叶子 学习docker搭建测试环境断断续续也有三个多月了,希望记录一下这个过程.常言道,总结过去,展望未来嘛~文章浅显,还望各位大神路过轻拍. 按照国际惯例,先说一下背景: ...
 - hugepages_settings.sh
			
#!/bin/bash## hugepages_settings.sh## Linux bash script to compute values for the# recommended HugeP ...
 
			
		