91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中二叉樹與N叉樹的示例分析

發布時間:2022-03-18 11:26:50 來源:億速云 閱讀:147 作者:小新 欄目:開發技術

這篇文章主要介紹了Java中二叉樹與N叉樹的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

題目一

Java中二叉樹與N叉樹的示例分析

 解法

/**
 * 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 {
    StringBuffer sb = new StringBuffer();
    List<String> list = new ArrayList<String>();
    public List<String> binaryTreePaths(TreeNode root) {
        method(root);
        return list;
    }
    public void method(TreeNode root){
        if(root==null) return;
        int t = sb.length();
        sb.append(root.val);
        if(root.left==null&&root.right==null){
            list.add(sb.toString());
        }
        sb.append("->");
        method(root.left);
        method(root.right);
        sb.delete(t, sb.length());
    }
}

題目二

Java中二叉樹與N叉樹的示例分析

 解法

/**
 * 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 {
    int ans = 0;
    public int sumOfLeftLeaves(TreeNode root) {
        method(root,false);
        return ans;
    }
    public void method(TreeNode root,boolean flag){
        if(root==null) return;
        if(root.left==null&&root.right==null&&flag){
            ans+=root.val;
            return;
        }
        method(root.left,true);
        method(root.right,false);
    }
}

題目三

Java中二叉樹與N叉樹的示例分析

 解法

/*
// Definition for a Node.
class Node {
    public int val;
    public List<Node> children;
    public Node() {}
    public Node(int _val) {
        val = _val;
    }
    public Node(int _val, List<Node> _children) {
        val = _val;
        children = _children;
    }
};
*/
 
class Solution {
    public int maxDepth(Node root) {
        if(root==null){
            return 0;
        }
        int maxChildDepth = 0;
        for(int i = 0;i<root.children.size();i++){
            int childDepth = maxDepth(root.children.get(i));
            maxChildDepth = Math.max(maxChildDepth, childDepth);
        }
        return maxChildDepth+1;
    }
}

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Java中二叉樹與N叉樹的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肥乡县| 霍林郭勒市| 凤庆县| 莲花县| 桐柏县| 松滋市| 吴江市| 西和县| 龙州县| 恩施市| 鹤岗市| 伽师县| 阿拉善左旗| 扎兰屯市| 荣昌县| 宝清县| 利川市| 迭部县| 阿尔山市| 高要市| 贵定县| 固原市| 尚志市| 宝兴县| 甘洛县| 涪陵区| 波密县| 景泰县| 嵊泗县| 虹口区| 延川县| 连平县| 兴安盟| 尼勒克县| 龙陵县| 黄石市| 乾安县| 靖边县| 巩义市| 康马县| 东辽县|