最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

劍指Offer之Java算法習(xí)題精講N叉樹的遍歷及數(shù)組與字符串

 更新時間:2022年03月22日 17:06:38   作者:明天一定.  
跟著思路走,之后從簡單題入手,反復(fù)去看,做過之后可能會忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化

題目一

N叉樹題——前序遍歷

根據(jù)給定的N叉樹根節(jié)點,返回它節(jié)點值的前序遍歷

具體題目如下

解法

/*
// 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 {
    ArrayList<Integer> list = new ArrayList<Integer>();
    public List<Integer> preorder(Node root) {
        if (root == null) return list;
        list.add(root.val);
        for(int i=0;i<root.children.size();i++){
            preorder(root.children.get(i));
        }
        return list;
    }
}

題目二

N叉樹題——后序遍歷

根據(jù)給定的N叉樹根節(jié)點,返回它節(jié)點值的后序遍歷

具體題目如下

 解法

/*
// 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 {
    ArrayList<Integer> list = new ArrayList<Integer>();
    public List<Integer> postorder(Node root) {
        if(root==null) return list;
        for(int i = 0;i<root.children.size();i++){
            postorder(root.children.get(i));
        }
        list.add(root.val);
        return list;
    }
}

題目三

二叉樹題——創(chuàng)建字符串

根據(jù)給定的二叉樹,采用前序遍歷的方式并按指定條件將它轉(zhuǎ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 {
    public String tree2str(TreeNode root) {
        // root為空返回""
        if(root==null){
            return "";
        }
        // root左右為空
        if(root.left==null&&root.right==null){
            return root.val+"";
        }
        // root右為空
        if(root.right==null){
            return root.val+"("+tree2str(root.left)+")";
        }
        // root左右不空或是左不為空
        return root.val+"("+tree2str(root.left)+")"+"("+tree2str(root.right)+")";
    }
}

題目四

數(shù)組題——數(shù)組中三個數(shù)最大乘積

根據(jù)給定的整型數(shù)組,返回其中三個數(shù)組成的最大乘積

具體題目如下

解法

class Solution {
    public int maximumProduct(int[] nums) {
        Arrays.sort(nums);
        int n = nums.length;
        // 拿到最大三個數(shù),或者最小兩個數(shù)和最大一個數(shù)
        int ans = Math.max(nums[n-1]*nums[n-2]*nums[n-3],nums[n-1]*nums[0]*nums[1]);
        return ans;
    }
}
 
// 拿到最大三個數(shù),或者最小兩個數(shù)和最大一個數(shù)
class Solution {
    public int maximumProduct(int[] nums) {
        // 最小的和第二小的
        int min1 = Integer.MAX_VALUE, min2 = Integer.MAX_VALUE;
        // 最大的、第二大的和第三大的
        int max1 = Integer.MIN_VALUE, max2 = Integer.MIN_VALUE, max3 = Integer.MIN_VALUE;
        for(int n:nums){
            if(n<min1){
                min2 = min1;
                min1 = n;
            }else if(n<min2){
                min2 = n;
            }
            if(n>max1){
                max3 = max2;
                max2 = max1;
                max1 = n;
            }else if(n>max2){
                max3 = max2;
                max2 = n;
            }else if(n>max3){
                max3 = n;
            }
        }
        return Math.max(min1*min2*max1,max1*max2*max3);
    }
}

到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講N叉樹的遍歷及數(shù)組與字符串的文章就介紹到這了,更多相關(guān)Java N叉樹的遍歷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • IDEA Error:java: 無效的源發(fā)行版: 17錯誤

    IDEA Error:java: 無效的源發(fā)行版: 17錯誤

    本文主要介紹了IDEA Error:java: 無效的源發(fā)行版: 17錯誤,這個錯誤是因為您的IDEA編譯器不支持Java 17版本,您需要更新您的IDEA編譯器或者將您的Java版本降級到IDEA支持的版本,本文就來詳細(xì)的介紹一下
    2023-08-08
  • idea如何添加文檔注釋

    idea如何添加文檔注釋

    這篇文章主要介紹了idea如何添加文檔注釋,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-06-06
  • 在springboot中使用注解將值注入?yún)?shù)的操作

    在springboot中使用注解將值注入?yún)?shù)的操作

    這篇文章主要介紹了在springboot中使用注解將值注入?yún)?shù)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    網(wǎng)站的服務(wù)端向用戶發(fā)郵件時,郵件中往往需要攜帶圖片,鏈接等內(nèi)容。所以為了方便起見,我們一般發(fā)送HTML格式的郵件,那么怎么去拼一個HTML格式的郵件呢?——Thymeleaf。開始之前,先新建一個SpringBoot項目,并添加需要用到的依賴。然后就可以繼續(xù)往下了
    2022-09-09
  • javafx tableview鼠標(biāo)觸發(fā)更新屬性詳解

    javafx tableview鼠標(biāo)觸發(fā)更新屬性詳解

    這篇文章主要為大家詳細(xì)介紹了javafx tableview鼠標(biāo)觸發(fā)更新屬性的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Java?Thread.currentThread().getName()?和?this.getName()區(qū)別詳解

    Java?Thread.currentThread().getName()?和?this.getName()區(qū)別詳

    本文主要介紹了Thread.currentThread().getName()?和?this.getName()區(qū)別詳解,TestThread?testThread?=?new?TestThread();
    2022-02-02
  • Java實現(xiàn)評論回復(fù)功能的完整步驟

    Java實現(xiàn)評論回復(fù)功能的完整步驟

    這篇文章主要給大家介紹了關(guān)于Java實現(xiàn)評論回復(fù)功能的完整步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • java框架基礎(chǔ)之SPI機制實現(xiàn)及源碼解析

    java框架基礎(chǔ)之SPI機制實現(xiàn)及源碼解析

    這篇文章主要為大家介紹了java框架基礎(chǔ)之SPI機制實現(xiàn)及源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • SpringBoot與Spring之間的對比

    SpringBoot與Spring之間的對比

    這篇文章主要介紹了SpringBoot與Spring之間的對比,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • MyBatis的CRUD中的不同參數(shù)綁定查詢實現(xiàn)

    MyBatis的CRUD中的不同參數(shù)綁定查詢實現(xiàn)

    本文主要介紹了MyBatis的CRUD中的不同參數(shù)綁定查詢實現(xiàn),主要包括單個參數(shù)傳遞綁定,序號參數(shù)傳遞綁定,注解參數(shù)傳遞綁定,pojo(對象)參數(shù)傳遞綁定,map參數(shù)傳遞綁定這幾種類型,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12

最新評論

潍坊市| 日喀则市| 普陀区| 贡嘎县| 修武县| 云阳县| 新密市| 巍山| 枝江市| 阿拉善盟| 临夏县| 邹城市| 施秉县| 额尔古纳市| 西吉县| 滨海县| 阿拉善右旗| 靖安县| 宕昌县| 班戈县| 临洮县| 彭阳县| 西城区| 吉安市| 玉田县| 庄浪县| 胶州市| 大冶市| 阿勒泰市| 辉南县| 明水县| 平乡县| 靖西县| 东明县| 承德县| 海晏县| 寿光市| 五家渠市| 同心县| 遂平县| 云林县|