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:
1 | Input: s = "abcdefg", k = 2 |
Example 2:
1 | Input: s = "abcd", k = 2 |
Constraints:
1 | 1 <= s.length <= 104 |
Approach
1 | Use two pointers to reverse substring every 2k. |
Algorithm
1 | 1. Go through the list |
Implementation
1 | char * reverseStr(char * s, int k){ |