题解 | 和为S的两个数字

和为S的两个数字

https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b

class Solution {
public:
    vector<int> FindNumbersWithSum(vector<int> array,int sum) {
        int left  = 0;
        int right = array.size() - 1 ;
        vector<vector<int>> res;
        while(left < right){
            int curr = array[left] + array[right];
            if(curr < sum){
                left++;
            }
            else if(curr > sum){
                right--;
            }
            else{
                return {array[left],array[right]};
            }
        }
        return {};


    }
};

全部评论
乘积最小的一定是两边的,所以双指针遇到的第一个就是结果
点赞 回复 分享
发布于 2025-04-18 10:54 上海

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务