剑指 Offer 58 - II. 左旋转字符串
class Solution {
public String reverseLeftWords(String s, int n) {
if (s == null)
return null;
char[] str = s.toCharArray();
n %= s.length();
reverse(str, 0, s.length() - 1);
reverse(str, 0, s.length() - 1 - n);
reverse(str, s.length() - n, s.length() - 1);
return new String(str);
}
private void reverse(char[] str, int start, int end) {
while (start < end) {
char temp = str[start];
str[start] = str[end];
str[end] = temp;
++start;
--end;
}
}
}