首页 > 其他 > 详细

leetcode107 二叉树的层次遍历2

时间:2020-11-06 23:29:33      阅读:33      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

 1 /*
 2  * @lc app=leetcode.cn id=107 lang=cpp
 3  *
 4  * [107] 二叉树的层次遍历 II
 5  */
 6 
 7 // @lc code=start
 8 /**
 9  * Definition for a binary tree node.
10  * struct TreeNode {
11  *     int val;
12  *     TreeNode *left;
13  *     TreeNode *right;
14  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
15  * };
16  */
17 class Solution {
18 public:
19 //和102一样的思路,最后加一个翻转
20     vector<vector<int>> levelOrderBottom(TreeNode* root) {
21         if(!root) return {};
22         vector<vector<int>> res;
23         queue<TreeNode*> q;
24 
25         q.push(root);
26         while(!q.empty()){
27             int len=q.size();
28             vector<int> tmp;
29             for(int i=0;i<len;i++){
30                 TreeNode* node=q.front();
31                 q.pop();
32                 tmp.push_back(node->val);
33                 if(node->left) q.push(node->left);
34                 if(node->right) q.push(node->right);
35             }
36             res.push_back(tmp);
37 
38         }
39         reverse(res.begin(),res.end());
40         return res;
41     }
42 };
43 // @lc code=end

 

leetcode107 二叉树的层次遍历2

原文:https://www.cnblogs.com/yaodao12/p/13939290.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!