1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| class Solution { public: void reverse(string& s, int start, int end) { for (int i = start, j = end; i < j; i++, j--) { swap(s[i], s[j]); } } string reverseStr(string s, int k) { for(int i = 0; i < s.size(); i += (2 * k)){ if(i + k <= s.size()){ reverse(s, i, i + k - 1); continue; } reverse(s, i, s.size() - 1);
} return s; } };
|