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

「優(yōu)選算法刷題」:有效三角形的個(gè)數(shù)

這篇具有很好參考價(jià)值的文章主要介紹了「優(yōu)選算法刷題」:有效三角形的個(gè)數(shù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、題目

給定一個(gè)包含非負(fù)整數(shù)的數(shù)組?nums?,返回其中可以組成三角形三條邊的三元組個(gè)數(shù)。

示例 1:

輸入: nums = [2,2,3,4]
輸出: 3
解釋:有效的組合是: 
2,3,4 (使用第一個(gè) 2)
2,3,4 (使用第二個(gè) 2)
2,2,3

示例 2:

輸入: nums = [4,2,3,4]
輸出: 4

二、思路解析

這道題,有一點(diǎn)挺新鮮的:構(gòu)成三角形的三條邊,僅需滿足 2 條最短邊之和大于等于第三條邊即可。

以前的羅根,就總是傻傻地求 3 次??

今天這道題,算是又打開了我新世界的大門,也提醒著我要虛心求學(xué),切勿狂妄自大。

咳咳,閑話嘮完了,我們回到這道題來??

知道了上面這個(gè)定理,我們就可以先給數(shù)組排個(gè)序,再利用 雙指針 進(jìn)行解答,具體步驟我也有在下面代碼注釋中寫到啦。

三、完整代碼

class Solution {
    public int triangleNumber(int[] nums) {

        //1、排序
        Arrays.sort(nums);

        //2、利用雙指針解答
        int sum = 0;
        for(int i =nums.length-1;i >=2; i--){

            //利用雙指針快速統(tǒng)計(jì)出符合要求的三元組的個(gè)數(shù)
            int left = 0;        
            int right =i-1;

            //算法實(shí)現(xiàn)部分
            while(left < right){
            if(nums[left] + nums[right] > nums[i]){
                sum += right - left;
                right--;
            }else{
                left++;
                } 
            }     
        } 
        return sum;
    }
}

以上就是本篇博客的全部?jī)?nèi)容啦,如有不足之處,還請(qǐng)各位指出,期待能和各位一起進(jìn)步!文章來源地址http://www.zghlxwxcb.cn/news/detail-808463.html

到了這里,關(guān)于「優(yōu)選算法刷題」:有效三角形的個(gè)數(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)文章

  • 力扣:611. 有效三角形的個(gè)數(shù)

    力扣:611. 有效三角形的個(gè)數(shù)

    今日為大家分享一道力扣611有效三角形的個(gè)數(shù)!本文將會(huì)為大家為大家講解題目,然后算法思路,最后再進(jìn)行代碼的實(shí)現(xiàn)!希望看完本文能對(duì)讀者有一定的收獲! 通過題目的描述可以看出,意思是給定一個(gè)數(shù)組,然后觀察數(shù)組中能元素組成三角形的個(gè)數(shù)! 題目上面那個(gè)例題

    2024年02月08日
    瀏覽(23)
  • 【雙指針】:Leetcode611.有效三角形的個(gè)數(shù)

    【雙指針】:Leetcode611.有效三角形的個(gè)數(shù)

    朋友們、伙計(jì)們,我們又見面了,本專欄是關(guān)于各種算法的解析,如果看完之后對(duì)你有一定的啟發(fā),那么請(qǐng)留下你的三連,祝大家心想事成! C 語 言 專 欄: C語言:從入門到精通 數(shù)據(jù)結(jié)構(gòu)專欄: 數(shù)據(jù)結(jié)構(gòu) 個(gè)? 人? 主? 頁?: stackY、 C + + 專 欄? ?: C++ Linux 專?欄? : Linu

    2024年02月20日
    瀏覽(24)
  • 每日一題:LeetCode-611. 有效三角形的個(gè)數(shù)

    每日一題:LeetCode-611. 有效三角形的個(gè)數(shù)

    前言: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ????如果說代碼有靈魂,那么它的靈魂一定是???? 算法 ????,因此,想要寫出??優(yōu)美的程序??,核心算法是必不可少的,少年,你渴望力量嗎????,想掌握程序的靈魂嗎???那么就必須踏上這樣一條漫長(zhǎng)

    2024年02月01日
    瀏覽(53)
  • 每日一題 611有效三角形的個(gè)數(shù)(相向雙指針)

    給定一個(gè)包含非負(fù)整數(shù)的數(shù)組? nums ?,返回其中可以組成三角形三條邊的三元組個(gè)數(shù)。 示例 1: 示例 2:

    2024年02月13日
    瀏覽(28)
  • 【LeetCode】雙指針妙解有效三角形的個(gè)數(shù)

    【LeetCode】雙指針妙解有效三角形的個(gè)數(shù)

    Problem: 611. 有效三角形的個(gè)數(shù) 首先我們來分析一下本題的思路 看到題目中給出的示例 題目的意思很簡(jiǎn)單,就是將給到的數(shù)字去做一個(gè)組合,然后看看這三條邊是否可以構(gòu)成三角形。那判斷的方法不用我說,相信大家如果讀過小學(xué)的話應(yīng)該都明白的,即 三角形兩邊之和大于第

    2024年02月10日
    瀏覽(18)
  • 使用Python實(shí)現(xiàn)高效數(shù)據(jù)下采樣:詳解最大三角形三桶(LTTB)算法

    引言 在我們接觸大規(guī)模的數(shù)據(jù)集時(shí),數(shù)據(jù)的數(shù)量往往會(huì)讓人望而卻步。數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等領(lǐng)域的專業(yè)人員需要對(duì)這些數(shù)據(jù)進(jìn)行處理,以便更好地理解數(shù)據(jù),以及利用數(shù)據(jù)進(jìn)行預(yù)測(cè)。然而,處理大規(guī)模數(shù)據(jù)的計(jì)算成本往往非常高,這時(shí)候,就需要引入下采樣(Downsampling)的

    2024年02月14日
    瀏覽(29)
  • 面試算法100:三角形中最小路徑之和

    面試算法100:三角形中最小路徑之和

    在一個(gè)由數(shù)字組成的三角形中,第1行有1個(gè)數(shù)字,第2行有2個(gè)數(shù)字,以此類推,第n行有n個(gè)數(shù)字。例如,下圖是一個(gè)包含4行數(shù)字的三角形。如果每步只能前往下一行中相鄰的數(shù)字,請(qǐng)計(jì)算從三角形頂部到底部的路徑經(jīng)過的數(shù)字之和的最小值。從三角形頂部到底部的路徑數(shù)字之和

    2024年01月16日
    瀏覽(21)
  • 模型減面算法, 優(yōu)化模型三角形

    sp4cerat/Fast-Quadric-Mesh-Simplification: Mesh triangle reduction using quadrics (github.com) https://github.com/sp4cerat/Fast-Quadric-Mesh-Simplification

    2023年04月24日
    瀏覽(24)
  • 用動(dòng)態(tài)規(guī)劃算法編程實(shí)現(xiàn)數(shù)字三角形問題

    用動(dòng)態(tài)規(guī)劃算法編程實(shí)現(xiàn)數(shù)字三角形問題

    如下所示為一個(gè)數(shù)字三角形: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 請(qǐng)編一個(gè)程序計(jì)算從頂至底的某一條路徑,使該路徑所經(jīng)過的數(shù)字的總和最大。 思路:建立兩個(gè)二位數(shù)組m(用來存儲(chǔ)數(shù)字三角形),sum(用來存儲(chǔ)數(shù)字三角形中每一個(gè)值得路徑值);sum[i] [j]從最后一行開始存儲(chǔ); 如果當(dāng)前

    2024年02月11日
    瀏覽(20)
  • 貪心算法求數(shù)組中能組成三角形的最大周長(zhǎng)

    題目:三角形的最大周長(zhǎng) 給定由一些正數(shù)(代表長(zhǎng)度)組成的數(shù)組arr,返回由其中三個(gè)長(zhǎng)度組成的、面積不為零的三角形的最大周長(zhǎng)。 如果不能形成任何面積不為零的三角形,返回`0。 分析: 對(duì)數(shù)組排序,再?gòu)拇蟮叫∵x擇三個(gè)數(shù), 再判斷是否能構(gòu)成三角形,可以直接返回三數(shù)之

    2024年02月12日
    瀏覽(20)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包