#include "stdafx.h"
#include <iostream>
using namespace std;
char* reverse(char* str, int begin, int end)
{
char temp;
while(begin<end)
{
temp = str[end];
str[end--] = str[begin];
str[begin++] = temp;
}
return str;
}
char* left_shift(char *str, int K)
{
int N=strlen(str);
K %= N;
//cout<<str<<" "<<endl;
reverse(str, 0, K -1);
//cout<<str<<" "<<endl;
reverse(str, K, N - 1);
//cout<<str<<" "<<endl;
reverse(str, 0, N - 1);
//cout<<str<<" "<<endl;
return str;
}
int main()
{
char str[] = "abcde123";
cout<<"before rotate is "<<str<<endl;
cout<<"the result is "<<left_shift(str,3)<<endl;
return 0;
}
左旋字符串
最新推荐文章于 2022-10-09 15:58:10 发布