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

和为S的两个数字

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

public:
    vector<int> FindNumbersWithSum(vector<int> array,int sum) {
        //使用双指针算法
        int left,right;
        int i,j,k;
        vector<int> result;
        left=0;
        right=array.size()-1;
        //如果数组为空
        if(array.size()==0){
            return result;
        }
        while(array[left]+array[right]!=sum&&left!=right){
            if(array[left]+array[right]<sum){
                left+=1;
            }
            else if(array[left]+array[right]>sum){
                right-=1;
            }
        }
        //如果数对不存在
        if(left==right){
            return result;
        }
        //存在
        result.push_back(array[left]);
        result.push_back(array[right]);
        return result;
    }
};
全部评论

相关推荐

点赞 评论 收藏
分享
喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务