541 - Reverse String II
#easy
Given a string s and an integer k, reverse the first k characters for every 2k characters counting from the start of the string.
If there are fewer than k characters left, reverse all of them. If there are less than 2k but greater than or equal to k characters, then reverse the first k characters and leave the other as original.
Example 1:
Input: s = "abcdefg", k = 2
Output: "bacdfeg"
k != 千,指變數K(2倍K)
class Solution {
public:
string reverseStr(string s, int k) {
int i = 0;
int j = s.size() - 1;
for ( i = 0; i < s.size(); i++ ) {
if ( i % (2*k) == 0 ) {
int end = i + k - 1;
if ( end > j ) end = j;
while ( i < end ) {
swap(s[i], s[end]);
i++;
end--;
}
}
}
return s;
}
};