611. 有效三角形的个数
固定一个最大长度的边,另外两个边进行双指针移动。 当出现符合条件的双指针时,他们范围内的数也同样符合三角形。
public int triangleNumber(int[] nums) {if (nums.length < 3) {return 0;}Arrays.sort(nums);int count = 0;for (int i = nums.length - 1; i >= 2; i--) {int left = 0;int right = i - 1;while (left < right) {if (nums[left] + nums[right] > nums[i]) {count += right - left;right--;} else {left++;}}}return count;}
