lintcode-二叉树的层次遍历 II
来源:互联网 发布:开淘宝店的经历 编辑:程序博客网 时间:2024/06/15 00:22
描述
给出一棵二叉树,返回其节点值从底向上的层次序遍历(按从叶节点所在层到根节点所在的层遍历,然后逐层从左往右遍历)
样例
给出一棵二叉树 {3,9,20,#,#,15,7},
3 / \ 9 20 / \ 15 7
按照从下往上的层次遍历为:
[ [15,7], [9,20], [3]]
代码
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */#include<queue>#include<algorithm>class Solution {public: /* * @param root: A tree * @return: buttom-up level order a list of lists of integer */ vector<vector<int>> levelOrderBottom(TreeNode * root) { // write your code here TreeNode * q=root; vector<vector<int>> res; if(root==NULL){ return res; } queue<TreeNode *> childs; childs.push(q); TreeNode * tt=NULL; int len=1; while(!childs.empty()){ vector<int> temp; len=childs.size(); while(len--){ temp.push_back(childs.front()->val); tt=childs.front(); childs.pop(); if(tt->left!=NULL){ childs.push(tt->left); } if(tt->right!=NULL){ childs.push(tt->right); } } res.push_back(temp); } reverse(res.begin(),res.end()); return res; }};
阅读全文
0 0
- LintCode-二叉树的层次遍历 II
- LintCode 二叉树的层次遍历 II
- LintCode:二叉树的层次遍历 II
- 二叉树的层次遍历 II,lintcode
- 二叉树的层次遍历 II -LintCode
- Lintcode 二叉树的层次遍历 II
- lintcode-二叉树的层次遍历 II
- lintcode-二叉树的层次遍历II-70
- LintCode 70 二叉树的层次遍历 II
- [Lintcode] #70 二叉树的层次遍历 II
- [Lintcode]Binary Tree Level Order Traversal II 二叉树的层次遍历 II
- LintCode 二叉树的层次遍历
- lintcode-二叉树的层次遍历-69
- LintCode:二叉树的层次遍历
- LintCode:二叉树的锯齿形层次遍历
- LintCode 二叉树的锯齿形层次遍历
- Lintcode(M) 二叉树的层次遍历
- 二叉树的锯齿形层次遍历,lintcode
- C语言:求所有水仙花数
- 多线程
- PAT (Basic Level) Practise (中文)1047. 编程团体赛(20)
- 搭建php+宝塔面板+vagrant+laravel+Mac+centos7.2+Composer开发环境
- Shell:syntax error near unexpected token
- lintcode-二叉树的层次遍历 II
- 究竟何为云计算
- 10进制 VS 2进制
- 猜序列,白书P309LA4255(暂放)
- JAVA接口 --笔记
- 图形界面
- python爬虫:http请求头部(header)详解
- 利用Costura.Fody制作绿色单文件程序(C#程序(含多个Dll)合并成一个Exe)
- 周末小总结