您的位置 首页 > 腾讯云社区

LeetCode刷题DAY 16:二叉树的层序遍历II---三猫

难度:简单 关键词:图搜索算法(BFS、DFS)

1 题目描述

根据层序遍历,自底向上返回一棵二叉树的节点值(从下至上逐层从左至右访问)。比如输入如下树:

返回[[15,7],[9,20],[3]]。

2 题解

这道题跟LeetCode刷题DAY 15:二叉树的层序遍历基本一致,只不过输出顺序变了一下,所以虽然用到BFS、DFS算法,但只要上一道题会了这道题换个输出顺序就行了,难度也从中级变成简单?。想要了解BFS、DFS看下上篇文章就好,这里不重复说明了。

思路:广度优先算法(BFS)

# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def levelOrderBottom(self, root: TreeNode) -> List[List[int]]: if not root: return [] result = [] level = [root] while len(level)>0: tmp1=[] res = [] for node in level: if node.left: tmp1.append(node.left) if node.right: tmp1.append(node.right) res.append(node.val) level = tmp1 result.append(res) # 就输出这变下就可以了 return result[::-1] ---来自腾讯云社区的---三猫

关于作者: 瞎采新闻

这里可以显示个人介绍!这里可以显示个人介绍!

热门文章

留言与评论(共有 0 条评论)
   
验证码: