Python刷leetcode--107. 二叉树的层次遍历 II

思路:
层次遍历一层之前,先定义一个中间队列,并且记录一下,需要遍历多少个节点。
可以反转一下list,或者直接用一个栈。先进去的在里面

class Solution:
    def levelOrderBottom(self, root: TreeNode) -> List[List[int]]:
        if not root:
            return []
        ans = []
        que = collections.deque()
        que.append(root)
        while len(que):
            length = len(que)
            tmpl = []
            for i in range(length):
                tmp = que.popleft()
                tmpl.append(tmp.val)
                if tmp.left:
                    que.append(tmp.left)
                if tmp.right:
                    que.append(tmp.right)
            ans.append(tmpl)
        return ans[::-1]
©️2020 CSDN 皮肤主题: 像素格子 设计师:CSDN官方博客 返回首页