0%

LeetCode-976

题目

Snipaste_2020-11-29_10-34-46.png

结果

Snipaste_2020-11-29_10-34-33.png

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution {
public int largestPerimeter(int[] A) {
Arrays.sort(A);
for (int i = A.length - 1; i > 1; i--) {
if (isTriangle(A[i - 2], A[i - 1], A[i])) {
return A[i - 2] + A[i - 1] + A[i];
}
}
return 0;
}

private boolean isTriangle(int a, int b, int c) {
return a + b > c;
}
}

数学题,关键在于这三条边在排序后的数组中一定是相邻的。

复杂度

时间复杂度:O(N Log N),快排

空间复杂度:O(Log N),快排的栈