题解 | #和为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 { };
    }
};

全部评论

相关推荐

06-19 19:06
门头沟学院 Java
码农索隆:别去东软,真学不到东西,真事
点赞 评论 收藏
分享
07-01 23:23
郑州大学 Java
否极泰来来来来:牛客迟早有高三的
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-04 14:35
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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