编程实现: 判断一个字符串是否为另外一个字符串旋转之后的字符串。
例如:给定s1 =AABCD和s2 = BCDAA,返回1
给定s1=abcd和s2=ACBD,返回0.
AABCD左旋一个字符得到ABCDA
AABCD左旋两个字符得到BCDAA
AABCD右旋一个字符得到DAABC
(char* src, char* find)//原字符串和比较字符串
{
char tmp[256] = { 0 };
strcpy(tmp, src);
strcat(tmp, src);//将src在tmp里写了两遍,包含了所有左旋的情况
return strstr(tmp, find) ? 1 : 0;//strstr函数为搜索一个字符串在另一个字符串里第一次出现的位置
}
int main()
{
printf("%d\n", find_round("ABCDE", "DEABC"));//调用find_round函数
return 0;
}