LeetCode 344 | 反转字符串
题目
题解
- 直接调用STL中reverse函数。
class Solution {
public:
void reverseString(vector<char>& s) {
reverse(s.begin(),s.end());
}
};
说明:reverse函数在两个参数为需要反转的统一个容器内的两个迭代器。
- 双指针
思路:题目要求原地修改,字符串反转其实就是对称位置的字符交换,靠一个临时变量交换前后指针值即可。
class Solution {
public:
void reverseString(vector<char>& s) {
int first=0,last=s.size()-1;
while(first<last){
auto ch=s[first];
s[first++]=s[last];
s[last--]=ch;
}
}
};