void left_rotate(char* str , int k) {
char temp = *str;
char* cur = str;
while (k--) {
while (*(cur + 1)) {
*cur = *(cur + 1);
cur++;
}
*cur = temp;
}
}
void nizhuanstring(char* left, char* right) {
while (left < right) {
char temp;
temp = *left;
*left = *right;
*right = temp;
left++;
right--;
}
}
void left_rotate2(char* str, int k) {
nizhuanstring(str, str + k-1);
nizhuanstring(str + k, str + strlen(str) - 1);
nizhuanstring(str, str + strlen(str) - 1);
}
void right_ratate(char* str, int k) {
left_rotate(str, strlen(str) - k);
}
.实现一个函数,可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB
最新推荐文章于 2023-10-31 23:13:57 发布