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

相关推荐
拂拉氏13 小时前
【知识讲解】 AVL树从基本成员的介绍到核心接口的实现(插入、判断、删除等等)
数据结构·算法·avl树
可靠的仙人掌13 小时前
SAC(Soft Actor-Critic)算法底座
开发语言·算法·php
海石15 小时前
单调栈复健,顺便,牺牲一下吧,空间复杂度!一切献给AC
算法·leetcode
海石15 小时前
JS击败94%,Hard题想不到动态规划,那就用数组和栈试试
算法·leetcode
码少女15 小时前
数据结构——希尔排序
数据结构·排序算法
星子yu16 小时前
【学习】怎么学好数据结构
数据结构·学习
alphaTao17 小时前
LeetCode 每日一题 2026/7/6-2026/7/12
算法·leetcode
想吃火锅100517 小时前
【leetcode】56.合并区间js
算法·leetcode·职场和发展
imuliuliang17 小时前
可合并堆在多任务调度中的优势与实现技巧7
算法
学究天人17 小时前
数学公理体系大全:Comprehensive Collection of Mathematical Axiom Systems(卷6)
网络·算法·数学建模·动态规划·几何学·图论·拓扑学