二叉树之遍历代码模板

1. 层序遍历/先序遍历DLR


java 复制代码
//定义层序遍历  
public void DLR(root){
Queue<TreeNode> res=new LinkedList<>();  
List<Double> result=new ArrayList<>();  
res.add(root);  
while(!res.isEmpty()){  
    //获取当前层的节点个数  
    int size=res.size();  
    for(int i=0;i<size;i++){  
        //获取当前层节点  
        TreeNode temp=res.peek();  
        res.poll();  
        //获取下一层节点  
        if(temp.left!=null){  
            res.add(temp.left);  
        }  
        if(temp.right!=null){  
            res.add(temp.right);  
        }  
    }  
}
}

2. 中序遍历LDR


java 复制代码
public static void LDR(TreeNode root){  
    if(root==null) return;  
    LDR(root.left);  
    System.out.println(root.val+"->");  
    LDR(root.right);  
}

3. 后序遍历RLD


java 复制代码
public voir LDR(TreeNode root){
	if(root==null) return;  
    LDR(root.left);
    LDR(root.right);   
    System.out.println(root.val+"->");  
}
相关推荐
AI软著研究员6 小时前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish6 小时前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
颜酱7 小时前
理解二叉树最近公共祖先(LCA):从基础到变种解析
javascript·后端·算法
地平线开发者1 天前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶
董董灿是个攻城狮1 天前
大模型连载2:初步认识 tokenizer 的过程
算法
地平线开发者1 天前
地平线 VP 接口工程实践(一):hbVPRoiResize 接口功能、使用约束与典型问题总结
算法·自动驾驶
罗西的思考1 天前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
HXhlx1 天前
CART决策树基本原理
算法·机器学习
Wect1 天前
LeetCode 210. 课程表 II 题解:Kahn算法+DFS 双解法精讲
前端·算法·typescript
颜酱1 天前
单调队列:滑动窗口极值问题的最优解(通用模板版)
javascript·后端·算法