我有两个字符串a
和b
。我想知道如果a
是轮换b
或反之亦然,而不创建第三个字符串。如何找出一个字符串是否是另一个字符串的旋转
-4
A
回答
1
一个字符串a是b的一个旋转当且仅当存在一个L,使得L == len(a)== len(b),并且存在一个偏移量0(0)< = j < len这样一个[(i + j)%L] == b [i] 0 < L.
在c代码中(假设L是字符串的公共长度。是b的旋转,否则为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;
+0
(j = 0; j
+0
Woops。将它编辑到它所属的位置,并添加了另一个缺失的大括号。对自我的教训:在发布之前测试代码:) –
+0
仍然缺少大括号但感谢:) – user1625802
相关问题
- 1. 一个字符串查找是否有另一个字符串
- 2. 如何找到一个字符串是否包含在另一个字符串
- 3. 搜索一个字符串是否另一个字符串
- 4. 判断一个字符串是否是另一个子字符
- 5. 找到一个字符串是否是SML中另一个字符串的子字符串NJ
- 6. 确定一个字符串是不是另一个字符串
- 7. C - 检查字符串是否是另一个字符串的子字符串
- 8. 确定一个字符串是否是另一个字符串的循环旋转?
- 9. 找出一个字符串是否包含唯一字符
- 10. 如何找出字符串的第一个字符是否是数字?
- 11. 如何确定一个字符串是否包含另一个字符串
- 12. 如何检查一个字符串是否等于另一个字符串?
- 13. 给定一个字符串,如何检查前几个字符是否是另一个字符串? C++
- 14. 如何检查字符串是否是另一个字符串的回文
- 15. 找出一个字符串是否在另一个字符串前面加上某些字符
- 16. 如何检查一个字符串是否至少包含另一个字符串中的一个字符?
- 17. AutoHotKey - 测试字符串是否包含另一个字符串
- 18. 爪哇 - 检查是否字符串在另一个字符串
- 19. 检查字符串是否以另一个字符串开头?
- 20. 确定字符串是否以另一个字符串结尾
- 21. 如何找到一个字符串出现在另一个字符串
- 22. 试图找到一个字符串是否包含字符串
- 23. 在另一个字符串中查找一个字符串的字符串
- 24. 如何检查一个字符串中的每个单词是否在另一个字符串中找到?
- 25. 是否有JavaScript方法来查明一个字符串是否是另一个字符串的一部分?
- 26. 如何知道给定的字符串是否是来自Java中另一个字符串的子字符串
- 27. 如何检查给定的Python字符串是否是另一个字符串的子字符串?
- 28. 如何检查一个字符串是否包含来自另一个字符串的任何字符?
- 29. 检查一个字符串是否与另一个字符串相似
- 30. 查看一个字符串是否包含另一个字符串
你到目前为止已经找到了什么? – mathematician1975
我首先比较它们的长度,如果匹配,我继续找到字符串a的第一个字母b,然后通过字符比较来比较字符。 – user1625802
然后,在问题中说出这是一个好主意,因为它表明你实际上已经尝试过自己做一些事情。当你问一个问题,而这个问题听起来像你还没有尝试过,这个问题通常会被降低,最终会被关闭。将来,解释你自己尝试过的事情,这会增加你获得良好答案的机会。 – mathematician1975