树的遍历相关

层次遍历

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
        List<List<Integer>> ans = new ArrayList<>();

        if(root==null){
            return ans;
        }
        LinkedList<TreeNode> queue = new LinkedList<>();


        queue.add(root);
        while(!queue.isEmpty()){

            List<Integer> layer = new ArrayList<>();
            int length = queue.size();

            for(int i=0; i<length;i++){
                TreeNode node = queue.poll();
                layer.add(node.val);
                if(node.left!=null){
                    queue.add(node.left);
                }
                if(node.right!=null){
                    queue.add(node.right);
                }
            }
            ans.add(layer);
        }
        return ans;
    }
}

求树的深度

class Solution {
    public int maxDepth(TreeNode root) {
        if(root==null){
            return 0;
        }
         int left = maxDepth(root.left);
         int right = maxDepth(root.right);
         return Math.max(left,right)+1;
    }
}

先序遍历

class Solution {

    List<Integer> ans = new ArrayList<>();

    public List<Integer> preorderTraversal(TreeNode root) {
        process(root);
        return ans;

    }

    public void process(TreeNode root){
        if(root==null){
            return; 
        }

        ans.add(root.val);
        process(root.left);
        process(root.right);

    }
}

中序遍历

后序遍历

作者:静默虚空
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

posted @   Chenyi_li  阅读(1)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2021-11-22 满秩矩阵分解例题
点击右上角即可分享
微信分享提示