二叉树之遍历代码模板

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+"->");  
}
相关推荐
core51231 分钟前
深度解析DeepSeek-R1中GRPO强化学习算法
人工智能·算法·机器学习·deepseek·grpo
mit6.82435 分钟前
计数if|
算法
a伊雪1 小时前
c++ 引用参数
c++·算法
御形封灵1 小时前
基于原生table实现单元格合并、增删
开发语言·javascript·ecmascript
应茶茶2 小时前
从 C 到 C++:详解不定参数的两种实现方式(va_args 与参数包)
c语言·开发语言·c++
Data_agent2 小时前
1688获得1688店铺列表API,python请求示例
开发语言·python·算法
2301_764441332 小时前
使用python构建的应急物资代储博弈模型
开发语言·python·算法
丿BAIKAL巛2 小时前
Java前后端传参与接收全解析
java·开发语言
code bean2 小时前
【C++】Scoop 包管理器与 MinGW 工具链详解
开发语言·c++
yanghuashuiyue3 小时前
Java过滤器-拦截器-AOP-Controller
java·开发语言