继续肝
344.反转字符串
简直不要太简单,熟悉一下Cpp的字符串:
class Solution
{
public:
void reverseString(vector<char>& s)
{
int left{0};
int right = s.size() -1;
char temp;
while(left < right){
temp = s[left];
s[left] = s[right];
s[right] = temp;
left ++;
right --;
}
}
};
当然,有时候偷懒可以用std:
class Solution
{
public:
void reverseString(vector<char>& s)
{
std::reverse(s.begin(), s.end());
}
};
541.反转字符串 II
直接用库函数reverse,当然双指针也可以实现:
class Solution {
public:
string reverseStr(string s, int k) {
string res{""};
string temp{""};
int start{0};
while(s.size() - start > k*2)
{
temp = s.substr(start, k);
reverse(temp.begin(), temp.end());
res += temp;
res += s.substr(start + k, k);
start += k*2;
}
if(s.size() - start > k)
{
temp = s.substr(start, k);
reverse(temp.begin(), temp.end());
res += temp;
res += s.substr(start + k, s.size() - start - k);
}
else
{
temp = s.substr(start, s.size());
reverse(temp.begin(), temp.end());
res += temp;
}
return res;
}
};
卡玛网 54.替换数字
简单熟悉一下ACM模式呗,也就是IO:
#include<iostream>
int main()
{
std::string s;
std::string res{""};
std::cin >> s;
for(char c : s)
{
if(c >= '0' && c <= '9') res += "number";
else res += c;
}
std::cout << res;
}