leetcode 面试题32-III 从上到下打印二叉树
2020-06-02 05:22
155 查看
思路:同样是用队列层次遍历二叉树,遍历完完整的一层,再添加到返回结果中,奇数行正序返回,偶数行逆序返回
# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def levelOrder(self, root: TreeNode) -> List[List[int]]: if root is None: return [] import queue q = queue.Queue() q.put(root) res = [] while(not q.empty()): tmp = [] for i in range(q.qsize()): cur = q.get() tmp.append(cur.val) if cur.left: q.put(cur.left) if cur.right: q.put(cur.right) if len(res) % 2 == 0:#奇数行正序返回,偶数行逆序返回 res.append(tmp) else: res.append(tmp[::-1]) return res
相关文章推荐
- 【Golang】LeetCode-剑指Offer-面试题32 - III-从上到下打印二叉树 III
- 【Golang】LeetCode-剑指Offer-面试题32 - II-从上到下打印二叉树 II
- 【Golang】LeetCode-剑指Offer-面试题32 - I-从上到下打印二叉树【两种解法】
- leetcode--面试题32 - I. 从上到下打印二叉树
- 剑指Offer 面试题32:从上到下打印二叉树 Java代码实现
- 剑指offer系列-面试题32_1-分行从上到下打印二叉树(python)
- 【剑指offer】面试题32(2):分行从上到下打印二叉树
- 【Java】面试题32:从上到下打印二叉树(顺序和在之字形)
- 面试题32 - II. 从上到下打印二叉树 II
- 剑指offer面试题32:从上到下打印二叉树(c++ 完整代码)
- 面试题32:从上到下打印二叉树
- 剑指-面试题32-3 从上到下打印二叉树(“之”字形)
- 【剑指offer】面试题32:从上到下打印二叉树
- half ok面试题32:从上到下打印二叉树
- 剑指-面试题32-1 从上到下打印二叉树
- [题目3]牛客剑指Offer面试题32:从上到下打印二叉树
- 剑指offer 面试题32 从上到下打印二叉树
- half ok 面试题32(2)按层打印二叉树
- 剑指Offer-32:从上到下打印二叉树
- 【剑指offer】面试题32(3):之字形打印二叉树