给定一个字符串S,把S的前K个字符移到S的尾部
如把abcdef的ab移到字符串末尾得到cdefab的做法
(X‘Y’)‘ = YX
如:abcdef
X = ab X’ = ba;
Y = cdef Y' = fedc;
(X'Y')' = (bafedc)' = cdefab;
代码如下
void ReverseString(char* s,int from,int to){
while(from < to){
char t = s[from];
s[from++] = s[to];
s[to--] = t;
}
}
void leftRotateString(char* s,int n,int m){
m %= n;
ReverseString(s,0,m-1);
ReverseString(s,m,n-1);
(s,0,n-1);
}
第一次写博客,希望以后能够坚持下去