leetcode刷题 – 144.二叉树的前序遍历(Python)

144.二叉树的前序遍历

题目来源【LeetCode】:https://leetcode.cn/problems/binary-tree-preorder-traversal

题目描述

给你二叉树的根节点 root ,返回它节点值的 前序 遍历。

示例1:

image-20221020111956422

输入:root = [1,null,2,3]
输出:[1,2,3]

示例2:

输入:root = []
输出:[]

示例3:

输入:root = [1]
输出:[1]

解题思路

使用 递归 ,二叉树的前序遍历顺序是:根节点 --> 左孩子 --> 右孩子

代码

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def preorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
        
        if not root:
            return []
        res = []
        res.append(root.val)
        res.extend(self.preorderTraversal(root.left))
        res.extend(self.preorderTraversal(root.right))
        return res

extend() - 用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list.extend(seq): seq – 元素列表


版权声明:本文为qq_42843081原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
THE END
< <上一篇
下一篇>>