From 57309a28cc626c14db03806f3cb505f5c1f2cdaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=94=90=E6=A0=91=E6=A3=AE?= Date: Mon, 22 Apr 2019 23:53:48 +0800 Subject: [PATCH] Create 102. Binary Tree Level Order Traversal.md --- .../102. Binary Tree Level Order Traversal.md | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 solutions/102. Binary Tree Level Order Traversal.md diff --git a/solutions/102. Binary Tree Level Order Traversal.md b/solutions/102. Binary Tree Level Order Traversal.md new file mode 100644 index 0000000..3b0bdf1 --- /dev/null +++ b/solutions/102. Binary Tree Level Order Traversal.md @@ -0,0 +1,32 @@ +# [102. Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) +# 思路 +层序遍历二叉树。已经在[107题题解](https://github.com/ShusenTang/LeetCode/blob/master/solutions/107.%20Binary%20Tree%20Level%20Order%20Traversal%20II.md)分析过了。 + +时空复杂度均O(n) + +# C++ +``` C++ +class Solution { +public: + vector> levelOrder(TreeNode* root) { + vector>res; + if(root == NULL) return res; + queueq; + TreeNode *p; + + q.push(root); + while(!q.empty()){ + vectorlevel; + for(int i = q.size(); i > 0; i--){ + p = q.front(); + q.pop(); + level.push_back(p -> val); + if(p -> left) q.push(p -> left); + if(p -> right) q.push(p -> right); + } + res.push_back(level); + } + return res; + } +}; +```