Leetcode 167. 两数之和 II - 输入有序数组(中等) 344. 反转字符串(简单) 两端指针夹逼

167. 两数之和 II - 输入有序数组(中等)

 

 思路:

有序数组求两数和等于target

使用双指针从两端夹逼的方法

class Solution {
public:
    vector<int> twoSum(vector<int>& numbers, int target) {
        int left=0;
        int right=numbers.size()-1;
        vector<int> ret;
        while(left<right){
            int sum=numbers[left]+numbers[right];
            if(sum==target){
                ret.push_back(left+1);
                ret.push_back(right+1);
                return ret;
            }
            if(sum>target){
                right--;
            }else{
                left++;
            }
        }
        return ret;
    }
};

 

344. 反转字符串(简单)

题目:

反转数组

思路:

class Solution {
public:
    void reverseString(vector<char>& s) {
        int left=0;
        int right=s.size()-1;
        while(left<right){
            swap(s[left],s[right]);
            left++;
            right--;
        }
    }
};

 

posted @ 2022-02-26 20:39  鸭子船长  阅读(32)  评论(0编辑  收藏  举报