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

leetcode 70.爬樓梯+209.長(zhǎng)度最小的子數(shù)組

這篇具有很好參考價(jià)值的文章主要介紹了leetcode 70.爬樓梯+209.長(zhǎng)度最小的子數(shù)組。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

70. 爬樓梯 - 力扣(LeetCode)

題目:

假設(shè)你正在爬樓梯。需要?n?階你才能到達(dá)樓頂。

每次你可以爬?1?或?2?個(gè)臺(tái)階。你有多少種不同的方法可以爬到樓頂呢?

?示例:

?輸入:n = 3 輸出:3 解釋:有三種方法可以爬到樓頂。
1. 1 階 + 1 階 + 1 階

2. 1 階 + 2 階

3. 2 階 + 1 階

?思路:

爬樓梯分為的兩種方式:

當(dāng)樓梯階數(shù)大于2時(shí),第一種:第一步爬1階;第二種:第一步爬2階。爬過一階后,可以當(dāng)做又是第一步爬。

方法一:遞歸

class Solution {
        Map<Integer,Integer> storeMap = new HashMap<>();
    public int climbStairs(int n) {
        if (n==1)return 1;
        if (n==2)return 2;
        if (null !=storeMap.get(n))
            return storeMap.get(n);
        else {
            int res = climbStairs(n-1)+climbStairs(n-2);
            storeMap.put(n,res);
            return res;
        }
    }
}

方法二:循環(huán) (遞歸轉(zhuǎn)換)

class Solution {
    public int climbStairs(int n) {
        //循環(huán)
        if(n==1)return 1;
        if (n==2)return 2;
        int p1 = 1;
        int p2 = 2;
        int res = 0;
        for (int i = 3; i <= n; i++) {
            res = p1+p2;
            p1 = p2;
            p2 = res;
        }
        return res;
    }
}

209. 長(zhǎng)度最小的子數(shù)組 - 力扣(LeetCode)

題目描述:

給定一個(gè)含有?n?個(gè)正整數(shù)的數(shù)組和一個(gè)正整數(shù) target 。

找出該數(shù)組中滿足其和 ≥ target 的長(zhǎng)度最小的 連續(xù)子數(shù)組?[numsl, numsl+1, ..., numsr-1, numsr],并返回其長(zhǎng)度。如果不存在符合條件的子數(shù)組,返回 0 。

示例:

輸入:target = 7, nums = [2,3,1,2,4,3]

輸出:2

解釋:子數(shù)組?[4,3]是該條件下的長(zhǎng)度最小的子數(shù)組。

?思路:開始用的雙循環(huán)暴力枚舉,結(jié)果超時(shí)了,改用滑動(dòng)窗口法。文章來源地址http://www.zghlxwxcb.cn/news/detail-436023.html

class Solution {
    public int minSubArrayLen(int target, int[] nums) {
        int res = Integer.MAX_VALUE;
        int sum = 0;
        int i = 0;
        int j = 0;
        while (i<nums.length){
            sum+=nums[i++];
            while (sum>=target){
                res = Math.min(res,i-j);
                sum -= nums[j++];
            }
        }
        return res == Integer.MAX_VALUE?0:res;
    }
}

到了這里,關(guān)于leetcode 70.爬樓梯+209.長(zhǎng)度最小的子數(shù)組的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(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)文章

  • 【算法|滑動(dòng)窗口No.1】leetcode209. 長(zhǎng)度最小的子數(shù)組

    【算法|滑動(dòng)窗口No.1】leetcode209. 長(zhǎng)度最小的子數(shù)組

    個(gè)人主頁:兜里有顆棉花糖 歡迎 點(diǎn)贊?? 收藏? 留言? 加關(guān)注??本文由 兜里有顆棉花糖 原創(chuàng) 收錄于專欄【手撕算法系列專欄】【LeetCode】 ??本專欄旨在提高自己算法能力的同時(shí),記錄一下自己的學(xué)習(xí)過程,希望對(duì)大家有所幫助 ??希望我們一起努力、成長(zhǎng),共同進(jìn)步。

    2024年02月08日
    瀏覽(26)
  • 【代碼隨想錄-Leetcode第六題:209. 長(zhǎng)度最小的子數(shù)組】

    【代碼隨想錄-Leetcode第六題:209. 長(zhǎng)度最小的子數(shù)組】

    給定一個(gè)含有 n 個(gè)正整數(shù)的數(shù)組和一個(gè)正整數(shù) target 。 找出該數(shù)組中滿足其和 ≥ target 的長(zhǎng)度最小的 連續(xù)子數(shù)組 [numsl, numsl+1, …, numsr-1, numsr] ,并返回其長(zhǎng)度。如果不存在符合條件的子數(shù)組,返回 0 。 參考【代碼隨想錄】 示例 1: 示例 3: 提示: 1 = target = 109 1 = nums.length

    2024年02月12日
    瀏覽(26)
  • Leetcode 977-有序數(shù)組的平方 | LeetCode209-長(zhǎng)度最小的子數(shù)組 | Leetcode59-螺旋矩陣

    給你一個(gè)按 非遞減順序 排序的整數(shù)數(shù)組 nums,返回 每個(gè)數(shù)字的平方 組成的新數(shù)組,要求也按 非遞減順序 排序。 思考: 這個(gè)數(shù)組為有序數(shù)組,那么即使前面有負(fù)的,數(shù)組平方的最大值只能是在數(shù)組的倆端,不是在左邊就是右邊,不可能是在中間 由此想到雙指針做法,left從

    2024年02月16日
    瀏覽(30)
  • LeetCode977.有序數(shù)組的平方 ,209.長(zhǎng)度最小的子數(shù)組 ,59.螺旋矩陣II

    LeetCode977.有序數(shù)組的平方 思路: ? ? ? ? 雙指針應(yīng)用 ? ? ? ? 因?yàn)閿?shù)組是有序的,數(shù)組中可能存在負(fù)數(shù),所以其平方的最大值只可能是數(shù)組的頭或尾,因此可以定義兩個(gè)指針,i指向頭,j指向尾。同時(shí)定義一個(gè)新數(shù)組result,讓k指向新數(shù)組的最后一個(gè)元素,當(dāng)nums[i] * nums[i]

    2023年04月21日
    瀏覽(24)
  • java數(shù)據(jù)結(jié)構(gòu)與算法刷題-----LeetCode209. 長(zhǎng)度最小的子數(shù)組

    java數(shù)據(jù)結(jié)構(gòu)與算法刷題-----LeetCode209. 長(zhǎng)度最小的子數(shù)組

    java數(shù)據(jù)結(jié)構(gòu)與算法刷題目錄(劍指Offer、LeetCode、ACM)-----主目錄-----持續(xù)更新(進(jìn)不去說明我沒寫完): https://blog.csdn.net/grd_java/article/details/123063846 解題思路 代碼:時(shí)間復(fù)雜度O(n).空間復(fù)雜度O(1)

    2024年01月21日
    瀏覽(96)
  • leetcode分類刷題:易混題辨析一、209. 長(zhǎng)度最小的子數(shù)組 vs 560. 和為K的子數(shù)組

    1、刷題慢慢積累起來以后,遇到相似的題目時(shí),會(huì)出現(xiàn)算法思路混淆了 2、這兩道題都是對(duì) 連續(xù)子數(shù)組加和 進(jìn)行考察,細(xì)節(jié)區(qū)別在于數(shù)組元素在209. 長(zhǎng)度最小的子數(shù)組為 正整數(shù)(窗口增加元素遞增,減少元素遞減) ,在560. 和為K的子數(shù)組為 整數(shù) 3、209. 長(zhǎng)度最小的子數(shù)組采

    2024年02月10日
    瀏覽(27)
  • LeetCode-Day2-977.有序數(shù)組的平方 ,209.長(zhǎng)度最小的子數(shù)組 ,59.螺旋矩陣II ,

    LeetCode-Day2-977.有序數(shù)組的平方 ,209.長(zhǎng)度最小的子數(shù)組 ,59.螺旋矩陣II ,

    雙指針法,原來數(shù)組是有序的,說明平房之后最左和最右兩邊的平方和是最大的,比較最大的插入新的vector數(shù)組,然后移動(dòng)指針選下一個(gè)元素進(jìn)行比較。 接下來就開始介紹數(shù)組操作中另一個(gè)重要的方法: 滑動(dòng)窗口 。 所謂滑動(dòng)窗口, 就是不斷的調(diào)節(jié)子序列的起始位置和終止

    2024年02月16日
    瀏覽(21)
  • 【LeetCode題目詳解】 977.有序數(shù)組的平方 209.長(zhǎng)度最小的子數(shù)組59.螺旋矩陣II day2

    【LeetCode題目詳解】 977.有序數(shù)組的平方 209.長(zhǎng)度最小的子數(shù)組59.螺旋矩陣II day2

    看完這個(gè)題目第一想法就是直接暴力解決,直接將全部平方然后進(jìn)行排序。比如快排。 代碼如下: 時(shí)間復(fù)雜度是 O(nlogn)或者說【O(n + nlogn)】,括號(hào)里面這個(gè)是為了比較接下來的方法。 然后看了代碼隨想錄的視頻學(xué)習(xí)了用雙指針來寫這道題的方法(說實(shí)話不看視頻真沒想到可

    2024年02月13日
    瀏覽(25)
  • 209. 長(zhǎng)度最小的子數(shù)組

    給定一個(gè)含有? n ? 個(gè)正整數(shù)的數(shù)組和一個(gè)正整數(shù)? target ?。 找出該數(shù)組中滿足其和 ? ≥ target ? 的長(zhǎng)度最小的? 連續(xù)子數(shù)組 ? [numsl, numsl+1, ..., numsr-1, numsr] ?,并返回其長(zhǎng)度 。 如果不存在符合條件的子數(shù)組,返回? 0 ?。 示例 1: 示例 2: 示例 3: 提示: 1 = target = 109 1 =

    2024年02月16日
    瀏覽(23)
  • 【滑動(dòng)窗口】209. 長(zhǎng)度最小的子數(shù)組

    【滑動(dòng)窗口】209. 長(zhǎng)度最小的子數(shù)組

    滑動(dòng)窗口 設(shè)置前后指針 滑動(dòng)窗口內(nèi)的元素之和總是大于或者等于s 滑動(dòng)窗口的起始位置: 如果窗口的值大于等于s 窗口向前移動(dòng) 窗口結(jié)束位置:for循環(huán)的j

    2024年02月13日
    瀏覽(19)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包