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

貪心算法求數(shù)組中能組成三角形的最大周長

這篇具有很好參考價值的文章主要介紹了貪心算法求數(shù)組中能組成三角形的最大周長。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

題目:三角形的最大周長
給定由一些正數(shù)(代表長度)組成的數(shù)組arr,返回由其中三個長度組成的、面積不為零的三角形的最大周長。
如果不能形成任何面積不為零的三角形,返回`0。

分析:文章來源地址http://www.zghlxwxcb.cn/news/detail-659408.html

  • 對數(shù)組排序,再從大到小選擇三個數(shù),
  • 再判斷是否能構(gòu)成三角形,可以直接返回三數(shù)之和,不能就把最大的數(shù)換掉,往小數(shù)的方向繼續(xù)找下一個,更新三個數(shù)的位置,繼續(xù)判斷,找到一個就返回
import java.util.Arrays;
/**
 * @author: Arbicoral
 * @create: 2023-07-18 13:07
 * @Description: 三角形的最大周長
 */
public class GreedyByMaxPerimeter {
    public static void main(String[] args) {
        System.out.println(maxPerimeter(new int[]{3,6,2,3,8,5,9,10,1}));
    }

    private static int maxPerimeter(int[] arr) {
        Arrays.sort(arr);
        int a,b,c;// a:第三大  b:次大   c:最大
        for (int i = arr.length-1; i>1; i--) {
            c = arr[i];
            b = arr[i-1];
            a = arr[i-2];
            if (isTriangle(a,b,c)){
                System.out.println("三角形的三邊分別為:"+a+"\t"+b+"\t"+c);
                return a+b+c;
            }
        }
        return -1;
    }

    /**
     * 判斷 a b c 能否組成三角形,其中 a < b < c
     * 判斷條件:兩邊之和 > 第三邊
     */
    private static boolean isTriangle(int a, int b, int c) {
        return a + b > c;
    }
}

到了這里,關(guān)于貪心算法求數(shù)組中能組成三角形的最大周長的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 如何判別三角形和求10 個整數(shù)中最大值?

    如何判別三角形和求10 個整數(shù)中最大值?

    分享每日小題,不斷進步,今天的你也要加油哦!接下來請看題------ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一、已知三條邊a,b,c能否構(gòu)成三角形,如果能構(gòu)成三角形,判斷三角形的類型(等邊三角形、等腰三角形或普通三角形 二、打印9*9乘法口訣表 三?、

    2024年04月23日
    瀏覽(28)
  • 「優(yōu)選算法刷題」:有效三角形的個數(shù)

    給定一個包含非負整數(shù)的數(shù)組? nums ?,返回其中可以組成三角形三條邊的三元組個數(shù)。 示例 1: 示例 2: 這道題,有一點挺新鮮的:構(gòu)成三角形的三條邊,僅需滿足 2 條最短邊之和大于等于第三條邊即可。 以前的羅根,就總是傻傻地求 3 次?? 今天這道題,算是又打開了我新世

    2024年01月20日
    瀏覽(20)
  • 模型減面算法, 優(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日
    瀏覽(23)
  • 面試算法100:三角形中最小路徑之和

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

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

    2024年01月16日
    瀏覽(21)
  • C/C++每日一練(20230314) 移動數(shù)組元素、搜索二維矩陣、三角形最小路徑和

    C/C++每日一練(20230314) 移動數(shù)組元素、搜索二維矩陣、三角形最小路徑和

    目錄 1. 移動數(shù)組中的元素 2. 搜索二維矩陣 3.?三角形最小路徑和 ???每日一練刷題專欄??? Golang 每日一練 專欄 C/C++ 每日一練 ?專欄 Python 每日一練 專欄 Java 每日一練 專欄 將一維數(shù)組中的元素循環(huán)左移 k 個位置 輸入: 第 1 行是一維數(shù)組元素的個數(shù) n (數(shù)組大小) 第 2 行是

    2024年02月13日
    瀏覽(26)
  • 用動態(tài)規(guī)劃算法編程實現(xiàn)數(shù)字三角形問題

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

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

    2024年02月11日
    瀏覽(20)
  • 雙指針算法實例5(有效三角形的個數(shù))

    給定一個包含非負整數(shù)的數(shù)組? nums ?,返回其中可以組成三角形三條邊的三元組個數(shù)。 示例 1: 示例 2: 提示: 1 = nums.length = 1000 0 = nums[i] = 1000 三角形構(gòu)成條件:任意兩邊之和一定要大于第三邊 其實在判斷中,只需要判斷 最小的兩邊和大于最長的一邊 即可 假設(shè) a=b=c 若要構(gòu)成

    2024年02月11日
    瀏覽(25)
  • 【算法專題突破】雙指針 - 有效三角形的個數(shù)(5)

    【算法專題突破】雙指針 - 有效三角形的個數(shù)(5)

    目錄 1. 題目解析 2. 算法原理 3. 代碼編寫 寫在最后: 題目鏈接:611. 有效三角形的個數(shù) - 力扣(Leetcode) ?我們可以根據(jù)示例1來理解這一道題目, 他說數(shù)組里面的數(shù)可以組成三角形三條邊的個數(shù), 那我們先自己枚舉一下所有情況看看: ?【2, 2, 3】 ?【2, 2, 4】 ?【2,

    2024年02月10日
    瀏覽(21)
  • 【算法挨揍日記】day03——雙指針算法_有效三角形的個數(shù)、和為s的兩個數(shù)字

    【算法挨揍日記】day03——雙指針算法_有效三角形的個數(shù)、和為s的兩個數(shù)字

    ?? 611.?有效三角形的個數(shù) https://leetcode.cn/problems/valid-triangle-number/ 給定一個包含非負整數(shù)的數(shù)組? nums ?,返回其中可以組成三角形三條邊的三元組個數(shù)。 本題是一個關(guān)于三角形是否能成立的題目,首先我們假設(shè)三角形的三邊(a,b,c),我們要保證兩邊之和大于第三邊 ? ?題

    2024年02月12日
    瀏覽(22)
  • 數(shù)組實驗:輸入4x4的矩陣,編寫程序?qū)崿F(xiàn) 1.輸出主對角線上的各元素(按對角線的格式輸出) 2.輸出上三角上的各元素(按三角形格式輸出)親測有效

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包