给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转)
样例
对于字符串 "abcdefg"
.
offset=0 => "abcdefg"
offset=1 => "gabcdef"
offset=2 => "fgabcde"
offset=3 => "efgabcd"
public class Solution {
/**
* @param str: an array of char
* @param offset: an integer
* @return: nothing
*/
public void rotateString(char[] str, int offset) {
// write your code here
if(str.length==0 || offset==0)
return;
for(int i=0;i<offset%(str.length);i++){
char last = str[str.length-1];
int j = str.length - 2;//从倒数第二个开始往前移动
while(j>=0){
str[j+1] = str[j];
j--;
}
str[0] = last;
}
}
}
/**
* @param str: an array of char
* @param offset: an integer
* @return: nothing
*/
public void rotateString(char[] str, int offset) {
// write your code here
if(str.length==0 || offset==0)
return;
for(int i=0;i<offset%(str.length);i++){
char last = str[str.length-1];
int j = str.length - 2;//从倒数第二个开始往前移动
while(j>=0){
str[j+1] = str[j];
j--;
}
str[0] = last;
}
}
}