leetcode hot二叉树的层序遍历

102. 二叉树的层序遍历

已解答

中等

相关标签

相关企业

给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)

Definition for a binary tree node.

class TreeNode(object):

def init(self, val=0, left=None, right=None):

self.val = val

self.left = left

self.right = right

class Solution(object):

def levelOrder(self, root):

"""

:type root: OptionalTreeNode

:rtype: ListList\[int]

"""

广度优先搜索

if root ==None:

return \[\]

queue = \[\]

final=\[\]

queue.append(root)

while queue!=\[\]:

left = len(queue)

final.append(queue0)

queue_next=\[\]

for i in range(left):

if queuei.left:

queue_next.append(queuei.left)

if queuei.right:

queue_next.append(queuei.right)

final.append(x.val for x in queue)

queue = queue_next

queue_next=\[\]

return final

直接使用广度优先搜索去做,但是需要注意的是,我们需要额外去维护一个每一个层的lsit

相关推荐
看我眼色行事^ \/ ^33 分钟前
2024.05.11 360春招WEB前端编程题
算法
来一碗刘肉面40 分钟前
有向无环图 DAG(描述表达式)
数据结构
一只肥瘫瘫43 分钟前
编码器 PLL 角度与速度观测器原理
人工智能·算法
Nil2081 小时前
leetcode 146LRU缓存
算法·leetcode·缓存
郝学胜_神的一滴2 小时前
干货版《算法导论》18:遍历增删原理、时间复杂度与集合序列实现全解
数据结构·算法
-dzk-2 小时前
【滑动窗口】LC 3.无重复字符的最长子串
算法·滑动窗口
zzxdear2 小时前
用 OR-Tools CP-SAT 求解最简单的柔性作业车间调度(FJSP)
算法
luj_17682 小时前
变频技术核心原理揭秘
服务器·c语言·开发语言·经验分享·算法
rannn_1112 小时前
【力扣hot100】图论专题+模板|DFS、BFS、拓扑排序...
java·算法·leetcode·深度优先·图论
_Narcissus_2 小时前
B树概念及操作笔记(含完整代码实现)
c语言·数据结构·数据库·c++·笔记·b树·算法