二叉树之遍历代码模板

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+"->");  
}
相关推荐
another heaven3 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++
Code_Solitude3 小时前
C语言动态内存 + 柔性数组 + 数组名退化
c语言·算法·柔性数组
上海潭龙东海科技有限公司3 小时前
客运站管控之动态孪生技术方案(新增一屏管控模块
数据仓库·人工智能·算法·重构·动态规划
SomeOtherTime4 小时前
Rust 闭包语法和原理(AI回答)
开发语言·后端·rust
apcipot_rain4 小时前
C++转Java日记(10)
java·开发语言
总要学点什么5 小时前
第105篇:三维特效-流动图片墙体效果——让箭头沿墙长滚,它俩竟是同一份代码
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
YLCHUP5 小时前
【思维&图论建模】题解:债权(debt)_图论_建模_思路转化_思维题目_C++算法竞赛
c++·笔记·算法·数学建模·贪心算法·深度优先·图论
xiaoye-duck5 小时前
《C++ 项目:手写大模型接入 SDK》会话模块整合:内存 SessionManager 与 DataManager 持久化联动
开发语言·数据库·c++·语言模型
思麟呀6 小时前
背包DP(01背包+完全背包)
c++·算法
Funlang6 小时前
龙芯上的 Fun:从跑起来到机器码
开发语言·龙芯