题解 | #和为S的两个数字#

和为S的两个数字

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

class Solution {
public:
    vector<int> FindNumbersWithSum(vector<int> array,int sum)
    {
        int left=0,right=array.size()-1;
        while(left<right)
        {
            int tmp=array[left]+array[right];
            if(tmp>sum)//我们算的值大于给的sum值,我们就将right往左边挪一位
            {
                right--;
            }
            else if(tmp<sum)//我们算的值小于sum的话,我们直接将left进行++操作
            {
                left++;
            }
            //tmp=sum的情况,我们直接将这个符合的两个数字进行返回的操作就行了
            else return {array[left],array[right]};//将这连个变量括起来我们就能进行返回操作了
        }
        //照顾编译器我们会强行返回一个结果的
            return { };
    }
};

全部评论

相关推荐

感性的干饭人在线蹲牛友:🐮 应该是在嘉定这边叭,禾赛大楼挺好看的
点赞 评论 收藏
分享
小红书 后端开发 总包n+8w+期权
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务