//三步翻转法
public void rotateString(char[] str, int offset) {
if (str==null || str.length == 0) return;
int len = str.length;
offset %= len;
swap(str, 0, len - 1 - offset);
swap(str, len - offset, len - 1);
swap(str, 0, len - 1);
}
public void swap(char[] str, int start, int end) {
while (start < end) {
char tmp = str[start];
str[start] = str[end];
str[end] = tmp;
start++;
end--;
}
}