例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!
class Solution {
public String reverseLeftWords(String s, int n) {
//转化为char[],三次翻转,然后在转换为string
char[] ch=s.toCharArray();
subfunc(ch,0,n-1);
subfunc(ch,n,ch.length-1);
subfunc(ch,0,ch.length-1);
return String.valueOf(ch);
}
void subfunc(char[] ch,int left,int right){
while(left<right){
char temp=ch[left];
ch[left]=ch[right];
ch[right]=temp;
left++;
right--;
}
}
}