后端开发刷题 | 二叉树的前序遍历

描述

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

数据范围:二叉树的节点数量满足 1≤n≤100 ,二叉树节点的值满足 1≤val≤100,树的各节点的值各不相同

示例 1:

示例1

输入:

复制代码
{1,#,2,3}

返回值:

复制代码
[1,2,3]

思路分析:

该题可以用递归来解决,前序遍历的顺序是根左右

代码:

java 复制代码
import java.util.*;

public class Solution {
    List<Integer> list=new ArrayList<>();

    List<Integer> preOrder(TreeNode node){
        if(node==null){
            return list;
        }
        //前序遍历:根左右
        list.add(node.val);
        preOrder(node.left);
        preOrder(node.right);
        return list;
    }

    /**
     * 
     * @param root TreeNode类 
     * @return int整型一维数组
     */
    public int[] preorderTraversal (TreeNode root) {
        // write code here
        list=preOrder(root);
        int[] res=new int[list.size()];
        for(int i=0;i<list.size();i++){
            res[i]=list.get(i);
        }
        return res;

    }
}
相关推荐
952365 小时前
MyBatis
后端·spring·mybatis
FQNmxDG4S7 小时前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言
超级码力6667 小时前
【Latex文件架构】Latex文件架构模板
算法·数学建模·信息可视化
穿条秋裤到处跑7 小时前
每日一道leetcode(2026.04.29):二维网格图中探测环
算法·leetcode·职场和发展
前端老石人7 小时前
HTML 字符引用完全指南
开发语言·前端·html
matlab_xiaowang7 小时前
Redux 入门:JavaScript 可预测状态管理库
开发语言·javascript·其他·ecmascript
Merlos_wind8 小时前
HashMap详解
算法·哈希算法·散列表
虹科网络安全8 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
axng pmje8 小时前
Java语法进阶
java·开发语言·jvm
汉克老师8 小时前
GESP2025年3月认证C++五级( 第三部分编程题(1、平均分配))
c++·算法·贪心算法·排序·gesp5级·gesp五级