LeetCode 976 三角形的最大周長

2021-10-05 21:53:42 字數 682 閱讀 2493

寫在前面:水題+1,其實可以用預設排序,然後遍歷的時候逆序遍歷。我特意把排序倒過來寫的,算是複習一把c++和js自帶排序如何使用(其實是查出來的,我又忘了)

c++**

class

solution

};

js**:

/**

* @param a

* @return

*/var

largestperimeter

=function(a

)a.sort

(compare)

;//sort排序預設是從小到大的,需要加這個函式引數反過來

for(

let i=

0;i<

a.length;i++)if

(a[i+1]+

a[i+2]

>

a[i]

)//只要較小的兩邊之和大於第三遍就滿足三角形形成條件

return

a[i+1]

+a[i+2]+

a[i]

;return0;

//不滿足輸出0

};

題目位址

LeetCode 976 三角形最大周長

組成三角形的充要條件 a b c。將a排序後,為了使周長最大,肯定是從後往前取,從最後一位c開始,依次判斷前兩位的數a,b之和是否比它大,只要滿足,那a c b和b c a又一定成立 c已經大於a b了 則abc可以構成三角形,且此時周長最大 如果不能滿足,就繼續往前找,直到找完所有a中元素。cla...

LeetCode 976 三角形的最大周長

給定由一些正數 代表長度 組成的陣列 a,返回由其中三個長度組成的 面積不為零的三角形的最大周長。如果不能形成任何面積不為零的三角形,返回 0。示例 1 輸入 2,1,2 輸出 5 示例 2 輸入 1,2,1 輸出 0 示例 3 輸入 3,2,3,4 輸出 10 示例 4 輸入 3,6,2,3 輸出...

leeetCode 976 三角形的最大周長

給定由一些正數 代表長度 組成的陣列 a,返回由其中三個長度組成的 面積不為零的三角形的最大周長。如果不能形成任何面積不為零的三角形,返回 0。示例 1 輸入 2,1,2 輸出 5思路 假設三角形三邊滿足a b c,則 a b c,因此可以列舉最長邊c,從貪心角度考慮一定是小於最長邊c的最大的兩個數...