class Solution
{
public:
string reverseStr(string s, int k)
{
if(s.size() < k)
{
reverse(s.begin(), s.end());
return s;
}
for(int i = 0; i < s.size(); )
{
reverse(s.begin() + i, s.begin() + i + k);//如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。
i += 2*k;
if(s.size() - i - 1 < k)//如果剩余字符少于 k 个,则将剩余字符全部反转。
{
reverse(s.begin() + i, s.end());
break;
}
}
return s;
}
};
541. 反转字符串 II
最新推荐文章于 2022-08-06 11:03:19 发布