611. 有效三角形的个数

简介: 611. 有效三角形的个数

image.png


方法一:暴力破解的方式


class Solution {
    public int triangleNumber(int[] nums) {
        if(nums.length==0||nums.length<3){
            return 0;
        }
        int count=0;
        Arrays.sort(nums);
        for(int i=0;i<nums.length-2;i++){
            for(int j=i+1;j<nums.length-1;j++){
                for(int k=j+1;k<nums.length;k++){
                    if(nums[i]+nums[j]>nums[k]){
                        count++;
                    }
                }
            }
        }
        return count;
    }
}


方法二:双指针法


class Solution {
    public int triangleNumber(int[] nums) {
        if(nums.length<3||nums==null){
            return 0;
        }
        Arrays.sort(nums);
        int count=0;
        for(int i=nums.length-1;i>=2;i--){
            int start=0;
            int end=i-1;;
            while(start<end){
                if(nums[i]<nums[end]+nums[start]){
                    count+=end-start;
                    end--;
                }else{
                    start++;
                }
            }
        }
        return count;
    }
}
目录
相关文章
|
1月前
如何判别三角形和求10 个整数中最大值?
如何判别三角形和求10 个整数中最大值?
|
1月前
|
人工智能 移动开发 算法
【动态规划】【C++算法】LeetCoce996正方形数组的数目
【动态规划】【C++算法】LeetCoce996正方形数组的数目
|
8月前
|
算法
【算法专题突破】双指针 - 有效三角形的个数(5)
【算法专题突破】双指针 - 有效三角形的个数(5)
15 0
|
8月前
|
开发者
【Leetcode -485.最大连续1的个数 -492.构造矩形】
【Leetcode -485.最大连续1的个数 -492.构造矩形】
27 0
|
1月前
|
算法
算法题—顺时针打印矩阵
算法题—顺时针打印矩阵
29 0
|
1月前
leetcode-1725:可以形成最大正方形的矩形数目
leetcode-1725:可以形成最大正方形的矩形数目
19 0
|
1月前
|
算法 C++
(C++)有效三角形的个数--双指针法
(C++)有效三角形的个数--双指针法
32 0
|
8月前
求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。
求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。
288 0
|
10月前
三角形判断
三角形判断
59 0
给定三个顶点的坐标使用程序计算三角形
给定三个顶点的坐标使用程序计算三角形
40 0