力扣热门100题之二叉树的中序遍历

本题考查的是对于二叉树的遍历方式中的中序遍历(也是我之前面试的时候遇到的面试题相同类型的,那道题是层序遍历)

思路:使用递归进行遍历(面试的时候想到用递归,但是因为不熟悉没写出来)

可以把遍历功能抽取成一个方法,也可以直接写在解答类里,我喜欢抽取成方法

java 复制代码
public List<Integer> inOrder(TreeNode root,ArrayList<Integer> list){
    if(root == null) return new ArrayList<>();
    inOrder(root.left);
    list.add(root.val);
    inorder(root.right);
    return list;
}

完整代码实现:

java 复制代码
class Solution {
    public List<Integer> inorderTraversal(TreeNode root) {
        
        List<Integer> result = new ArrayList<>();//用来存储最后的返回结果

        return inOrder(root,result);  
    }
    public List<Integer> inOrder(TreeNode root,List<Integer> list){
        if(root == null) return new ArrayList<>();
        inOrder(root.left,list);
        list.add(root.val);
        inOrder(root.right,list);
        return list;
    }
}
相关推荐
糖果店的幽灵16 分钟前
人已经用 WorkBuddy 找工作拿了面试,你还在一份份手工改简历
人工智能·面试·职场和发展·langgraph
imuliuliang28 分钟前
关于数据结构在算法设计中的核心作用解析7
算法
2401_894915532 小时前
GEO 搜索优化完整源码从零部署:环境配置、集群搭建全流程
开发语言·python·tcp/ip·算法·unity
普通网友3 小时前
共识算法实现:从工作量证明到权益证明的演进
算法·区块链·共识算法
ldmd2844 小时前
地图生成算法(噪声篇-Perlin,Simplex,Value noise)
算法·go·地图生成
国科安芯5 小时前
FreeRTOS RISC-V 浮点上下文切换移植:在 IAR 工程中完整保存 FPU 寄存器
java·开发语言·单片机·嵌入式硬件·算法·系统架构·risc-v
小陈phd5 小时前
集成检索介绍
算法
小poop5 小时前
轮转数组:从暴力到最优,一题掌握算法复杂度分析
数据结构·算法·leetcode