码迷,mamicode.com
首页 > 其他好文 > 详细

判断一个字符串是否为另外一个字符串旋转之后的字符串。

时间:2019-02-16 15:23:16      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:返回   col   pre   clu   span   ++   strlen   amp   ring   

例如:给定s1 = AABCD和s2 = BCDAA,返回1,给定s1 = abcd和s2 = ACBD,返回0.

AABCD左旋一个字符得到ABCDA
AABCD左旋两个字符得到BCDAA
AABCD右旋一个字符得到DAABC

 1 #include<stdio.h>
 2 #include<string.h>
 3 
 4 void Left_rotate(char* start, char* end)
 5 {
 6     //ABCD
 7     //BACD
 8     while (*end != \0)
 9     {
10         *start = *start^*end;
11         *end = *start^*end;
12         *start = *start^*end;
13         ++start;
14         ++end;
15     }
16 }
17 
18 int Find_str(char* str,char* str1)
19 {
20     int k = strlen(str);
21     while (k--)
22     {
23         if (strcmp(str, str1) == 0)
24         {
25             return 1;
26         }
27         else
28         {
29             Left_rotate(str, str + 1);
30         }
31     }
32     return 0;
33 }
34 
35 int main()
36 {
37     char str[100];
38     char str1[100];
39     printf("请输入一段字符串:\n");
40     scanf("%s", &str);
41     printf("请输入要判断的字符串:\n");
42     scanf("%s",&str1);
43     int find = Find_str(str, str1);
44     printf("%d",Find_str(str,str1));
45 
46     return 0;
47 }

 

判断一个字符串是否为另外一个字符串旋转之后的字符串。

标签:返回   col   pre   clu   span   ++   strlen   amp   ring   

原文地址:https://www.cnblogs.com/cuckoo-/p/10387601.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!