题目:344.反转字符串

题目

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

解题思路

采用双指针的思路,我们很快就能解出题目

代码如下

//双指针法
#include 

using namespace std;
class Solution 
{
public:
    void reverseString(vector& s) 
    {
        int left = 0;
        int right = s.size() - 1;

        while (left < right)
        {
            s[left] = s[left] + s[right];
            s[right] = s[left] - s[right];
            s[left] = s[left] - s[right];

            left++;
            right--;
        }
    }
};

你可能感兴趣的:(LeetCode,leetcode,算法,c++)