【LeetCode刷题-双指针】--259.较小的三数之和

259.较小的三数之和

方法:排序+双指针

java 复制代码
class Solution {
    public int threeSumSmaller(int[] nums, int target) {
        Arrays.sort(nums);
        int k = 0;
        for(int i = 0;i<nums.length;i++){
            int start = i + 1,end = nums.length - 1;
            while(start < end){
                int sum = nums[start] + nums[end] + nums[i];
                if(sum < target){
                    k += (end - start);  //因为数组排好序了,所以start到end中的数都小于target
                    start++;
                }
                if(sum >= target){
                    end--;
                }
            }
        }
        return k;
    }
}
相关推荐
Einsail10 分钟前
天梯赛题解(3-6)
算法
杜子不疼.11 分钟前
【LeetCode 852 & 162_二分查找】山脉数组的峰顶索引 & 寻找峰值元素
算法·leetcode·职场和发展
山楂树の14 分钟前
搜索插入位置(二分查找)
数据结构·算法
helloyangkl25 分钟前
Draco——参数说明
算法
!chen1 小时前
自适应滤波算法FPGA实现思路
算法·fpga开发
救救孩子把1 小时前
51-机器学习与大模型开发数学教程-4-13 EM算法与混合模型
人工智能·算法·机器学习
Ka1Yan1 小时前
[二叉树] - 代码随想录:二叉树的统一迭代遍历
数据结构·算法·leetcode
xu_yule1 小时前
算法基础(数论)—欧拉函数
c++·算法·欧拉函数
Brduino脑机接口技术答疑1 小时前
TDCA 算法在 SSVEP 场景中的训练必要性
人工智能·算法·机器学习·脑机接口
xu_yule1 小时前
算法基础(数学)—数论
c++·算法·数论·最大公约数和最小公倍数·质数的判定·筛质数