国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

算法刷題Day 37 單調(diào)遞增的數(shù)字+監(jiān)聽二叉樹

這篇具有很好參考價(jià)值的文章主要介紹了算法刷題Day 37 單調(diào)遞增的數(shù)字+監(jiān)聽二叉樹。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Day 37 貪心算法

738. 單調(diào)遞增的數(shù)字

兩個(gè)可能經(jīng)常要用到的函數(shù)

字符串轉(zhuǎn)數(shù)字:to_string()

數(shù)字轉(zhuǎn)字符串:stoi()

class Solution {
public:
    int monotoneIncreasingDigits(int n) {
        string num = to_string(n);
        int len = num.size();
        int flag = len;

        for (int i = len - 1; i >= 1; i--)
        {
            if (num[i - 1] > num[i])
            {
                flag = i;
                num[i - 1]--;
            }
        }

        for (int i = flag; i < num.size(); i++)
        {
            num[i] = '9';
        }

        return stoi(num);
    }
};

968. 監(jiān)控二叉樹

利用樹后續(xù)遍歷,同時(shí)加上狀態(tài)轉(zhuǎn)移的方法,非常值得反復(fù)學(xué)習(xí)文章來源地址http://www.zghlxwxcb.cn/news/detail-644373.html

class Solution {
    int rst;
    // 0: 無覆蓋, 1: 有攝像頭, 2: 有覆蓋
    int tracking(TreeNode *root)
    {
        if (!root) return 2;
        int leftStatus = tracking(root->left);
        int rightStatus = tracking(root->right);

        if (leftStatus == 2 && rightStatus == 2) return 0;
        if (leftStatus == 0 || rightStatus == 0)
        {
            rst++;
            return 1;
        }
        else return 2;
    }

public:
    int minCameraCover(TreeNode* root) {
        rst = 0;

        if (tracking(root) == 0) // 注意要接收這個(gè)返回值, 并作判斷, 必要時(shí)rst++
        {
            rst++;
        }

        return rst;
    }
};

到了這里,關(guān)于算法刷題Day 37 單調(diào)遞增的數(shù)字+監(jiān)聽二叉樹的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 貪心算法part6 | ● 738.單調(diào)遞增的數(shù)字 ● 968.監(jiān)控二叉樹

    代碼隨想錄算法訓(xùn)練營第一天 | 題目、題目 738.單調(diào)遞增的數(shù)字 局部最優(yōu):前一個(gè)數(shù)比當(dāng)前數(shù)小,前一個(gè)數(shù)位減一,當(dāng)前數(shù)置為9 題目要求小于等于N的最大單調(diào)遞增的整數(shù),那么拿一個(gè)兩位的數(shù)字來舉例。 例如:98,一旦出現(xiàn)strNum[i - 1] strNum[i]的情況(非單調(diào)遞增),首先想

    2024年02月10日
    瀏覽(20)
  • 單調(diào)遞增的數(shù)字+監(jiān)控二叉樹

    單調(diào)遞增的數(shù)字+監(jiān)控二叉樹

    前一位減一的話,后面的所有位可以取到9,要從后往前遍歷,保證單調(diào)遞增,后面變小了,前面也要變小 String.valueOf 轉(zhuǎn)換為String類型, Integer 類的 valueOf 方法 :將字符串或其他可以表示整數(shù)的數(shù)據(jù)轉(zhuǎn)換為 Integer 對(duì)象。 監(jiān)控二叉樹(四種情況,主要是根節(jié)點(diǎn)為0不容易想到 三

    2024年04月26日
    瀏覽(19)
  • DAY40:貪心算法(九)單調(diào)遞增的數(shù)字(貪心的思路)

    DAY40:貪心算法(九)單調(diào)遞增的數(shù)字(貪心的思路)

    本題暴力解法也需要看一下,雖然暴力解法超時(shí)了,但是這種思路是一種很基礎(chǔ)的思路,需要了解 數(shù)字是沒有辦法直接采用下標(biāo)遍歷的 ,如果 要for循環(huán)遍歷每個(gè)位置的數(shù)字,需要把數(shù)字轉(zhuǎn)成字符串string 當(dāng)且僅當(dāng)每個(gè)相鄰位數(shù)上的數(shù)字 x 和 y 滿足 x = y 時(shí),我們稱這個(gè)整數(shù)是

    2024年02月12日
    瀏覽(17)
  • 算法刷題Day 15 二叉樹的層序遍歷+翻轉(zhuǎn)二叉樹+對(duì)稱二叉樹

    層序遍歷二叉樹需要借助到隊(duì)列 遞歸方法 迭代方法 就是簡單的用上前序遍歷迭代方法實(shí)現(xiàn),不用想的太復(fù)雜 遞歸方法 迭代方法 這里使用了隊(duì)列來存放兩個(gè)要比較的結(jié)點(diǎn)。也可以使用棧,方法是類似的。

    2024年02月12日
    瀏覽(53)
  • 算法刷題Day 17 平衡二叉樹+二叉樹的所有路徑+左葉子之和

    計(jì)算左右兩棵子樹的高度,如果有一個(gè)高度是-1(有一棵子樹不平衡),直接返回-1,否則計(jì)算高度差,判斷是否不平衡 使用 回溯 的方法,每次處理一個(gè)節(jié)點(diǎn)之前要把它push進(jìn)table里,處理完之后又要把它pop出來 處理一個(gè)節(jié)點(diǎn)時(shí),要判斷它是否是左節(jié)點(diǎn)(需要父節(jié)點(diǎn),可以通

    2024年02月15日
    瀏覽(32)
  • 算法刷題Day 20 最大二叉樹+合并二叉樹+二叉搜索樹中的搜索+驗(yàn)證二叉搜索樹

    遞歸 遞歸 迭代 遞歸 迭代 遇到兩個(gè)坑的地方: 遞歸的時(shí)候,不能光驗(yàn)證左子樹的根節(jié)點(diǎn)小于當(dāng)前根節(jié)點(diǎn),右子樹的根節(jié)點(diǎn)大于但當(dāng)前根節(jié)點(diǎn),別忘了左子樹上的每一個(gè)節(jié)點(diǎn)都要求比根節(jié)點(diǎn)要小,右子樹上的每一個(gè)節(jié)點(diǎn)都要求比根節(jié)點(diǎn)大。 根節(jié)點(diǎn)跟左(右)子樹中的某一個(gè)節(jié)

    2024年02月16日
    瀏覽(16)
  • 算法刷題Day 16 二叉樹的最大深度+N叉樹的最大深度+二叉樹的最小深度+完全二叉樹的節(jié)點(diǎn)個(gè)數(shù)

    遞歸法 迭代法 使用層序的方法,相對(duì)比較好理解 遞歸法 迭代法 跟二叉樹的迭代差不多意思。 要想到是后序遍歷 遞歸法 先計(jì)算左右兩棵子樹的節(jié)點(diǎn)數(shù),再加和,用后序遍歷的方法 迭代法 迭代法用層序遍歷來處理 適用于完全二叉樹的優(yōu)化 完全二叉樹優(yōu)化方法沒自己想出來

    2024年02月17日
    瀏覽(33)
  • 【算法刷題day20】Leetcode:654. 最大二叉樹、617.合并二叉樹、700. 二叉搜索樹中的搜索、98.驗(yàn)證二叉搜索樹

    草稿圖網(wǎng)站 java的Deque 題目: 654. 最大二叉樹 解析: 代碼隨想錄解析 解題思路 NLR的建樹 代碼 總結(jié) 暫無 題目: 617.合并二叉樹 解析: 代碼隨想錄解析 解題思路 如果都為root1, root2都為空,返回null;如果root1為空,root2不為空,返回root2;如果roo1不為空,root2為空,返回root

    2024年04月10日
    瀏覽(26)
  • 算法刷題Day14 二叉樹的前序、中序、后序遍歷(遞歸、迭代、統(tǒng)一迭代方法)

    二叉樹的定義 遞歸 迭代 普通的遍歷(包括前序,中序和后續(xù))迭代方法都需要借助到棧 統(tǒng)一迭代 統(tǒng)一迭代使用標(biāo)記法,在棧中要處理的結(jié)點(diǎn)壓入空指針 遞歸 迭代 中序遍歷的迭代方法稍微特殊一點(diǎn) 中序遍歷是左中右,先訪問的是二叉樹頂部的節(jié)點(diǎn),然后一層一層向下訪問

    2024年02月15日
    瀏覽(22)
  • 算法刷題Day 21 二叉搜索樹的最小絕對(duì)差+二叉搜索樹中的眾數(shù)+二叉樹的最近公共祖先

    遞歸 遞歸中保存前一個(gè)節(jié)點(diǎn)的指針的方法,需要再學(xué)習(xí),鞏固一下 迭代 一下子就想到的方法:遍歷一遍二叉搜索樹,把各個(gè)節(jié)點(diǎn)的值存進(jìn)哈希表里(節(jié)點(diǎn)值——鍵,出現(xiàn)頻率——值),再遍歷哈希表找眾數(shù) 一般方法 既然是二叉搜索樹,中序遍歷就是有序的。有序的話,我

    2024年02月16日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包