gpt4 book ai didi

c - 如何判断一个字符串是否是另一个字符串的旋转

转载 作者:行者123 更新时间:2023-11-30 21:26:38 26 4
gpt4 key购买 nike

我有两个字符串ab 。我想知道是否 ab 的旋转反之亦然,无需创建第三个字符串。

最佳答案

当且仅当存在一个 L 使得 L == len(a) == len(b) 且存在偏移量 0 <= j < len(a) 时,字符串 a 是 b 的旋转对于所有 0 <= i < L,a[ (i+j) % L] == b[i]。

在c代码中(假设L是字符串的公共(public)长度。如果a是b的旋转,则返回1,否则返回0):

int i, j, is_rot;
for (i = 0; i< L; i++){
is_rot = 1;
for (j = 0; j<L; j++){
if (a[ (j + i) %L] != b[j] ){
is_rot = 0;
break;
}
}
if (is_rot) return 1;
}
return 0;

关于c - 如何判断一个字符串是否是另一个字符串的旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12130111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com