面试算法-126-二叉树的所有路径

题目

给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。

叶子节点 是指没有子节点的节点。

示例 1:

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

输出:["1->2->5","1->3"]

java 复制代码
class Solution {
    public List<String> binaryTreePaths(TreeNode root) {
        List<String> result = new ArrayList<>();
        LinkedList<String> path = new LinkedList<>();
        dfs(root, path, result);
        return result;

    }

    public void dfs(TreeNode root, LinkedList<String> path, List<String> result) {
        if (root == null) {
            return;
        }

        path.add(String.valueOf(root.val));

        if (root.left == null && root.right == null) {
            result.add(String.join("->", path));
        }
        dfs(root.left, path, result);
        dfs(root.right, path, result);
        path.removeLast();
    }
}
相关推荐
阿昭L1 小时前
堆结构与堆排序
数据结构·算法
2***57421 小时前
人工智能在智能投顾中的算法
人工智能·算法
草莓熊Lotso1 小时前
《算法闯关指南:动态规划算法--斐波拉契数列模型》--01.第N个泰波拉契数,02.三步问题
开发语言·c++·经验分享·笔记·其他·算法·动态规划
mit6.8247 小时前
bfs|栈
算法
CoderYanger9 小时前
优选算法-栈:67.基本计算器Ⅱ
java·开发语言·算法·leetcode·职场和发展·1024程序员节
jllllyuz9 小时前
Matlab实现基于Matrix Pencil算法实现声源信号角度和时间估计
开发语言·算法·matlab
稚辉君.MCA_P8_Java9 小时前
DeepSeek 插入排序
linux·后端·算法·架构·排序算法
多多*9 小时前
Java复习 操作系统原理 计算机网络相关 2025年11月23日
java·开发语言·网络·算法·spring·microsoft·maven
han_9 小时前
前端高频面试题之CSS篇(一)
前端·css·面试
덕화9 小时前
【面试宝典】线上问题逆向分析1
面试·职场和发展