LeetCode 144.二叉树的前序遍历

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

思路:根 左 右

代码

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<Integer> preorderTraversal(TreeNode root) {
        List<Integer> res = new ArrayList<>();
        dfs(res, root);
        return res;
    }
    private void dfs(List<Integer> res, TreeNode root) {
        if (root == null)
            return;
        res.add(root.val);
        dfs(res, root.left);
        dfs(res, root.right);
    }
}

性能

时间复杂度o(n)

空间复杂度o(n)

相关推荐
励志的小陈17 分钟前
双指针算法--移除元素、删除有序数组中的重复项、合并两个有序数组
算法
hoiii18742 分钟前
Mean Shift目标跟踪算法MATLAB实现
算法·matlab·目标跟踪
alphaTao42 分钟前
LeetCode 每日一题 2026/3/23-2026/3/29
服务器·windows·leetcode
励志的小陈43 分钟前
复杂度算法题——旋转数组(三种思路)
c语言·数据结构·算法
tankeven44 分钟前
HJ151 模意义下最大子序列和(Easy Version)
c++·算法
不光头强1 小时前
力扣78子集题解
算法·leetcode·深度优先
独断万古他化1 小时前
【算法通关】二叉树中的深搜:DFS 递归解题套路
算法·二叉树·深度优先·dfs·递归
㓗冽1 小时前
2026.03.27(第三天)
数据结构·c++·算法
sali-tec1 小时前
C# 基于OpenCv的视觉工作流-章44-直线卡尺
图像处理·人工智能·opencv·算法·计算机视觉
Magic--1 小时前
经典概率题:飞机座位分配问题(LeetCode 1227)超详细解析
算法·leetcode·职场和发展