给定两个字符串, A 和 B

A 的旋转操作就是将 A 最左边的字符移动到最右边。 例如, 若 A = 'abcde',在移动一次之后结果就是'bcdea' 。如果在若干次旋转操作之后,A 能变成B,那么返回True

示例 1:
输入: A = 'abcde', B = 'cdeab'
输出: true 示例 2:
输入: A = 'abcde', B = 'abced'
输出: false

注意:

  • A 和 B 长度不超过 100

正常的做法比较清晰了,可以一次移位一个去比较,全部移位一遍后没有匹配成功则返回false

在评论区看到一个神奇做法,将A复制一份,首尾相连,即A+A,然后判断B是否在A+A里面就可以了

非常巧妙而且快捷。

代码如下:

class Solution:
def rotateString(self, A: str, B: str) -> bool:
return len(A) == len(B) and B in (A+A)

最新文章

  1. React Native学习笔记之2
  2. oracle 行转列、列转行
  3. HDU-2222 Keywords Search(AC自动机--模板题)
  4. Office 365 - SharePoint 2013 Online 之母版页和页面布局
  5. index and polymorphic
  6. ASIHTTPRequest 记录过去5秒的平均流量字节/秒
  7. 基础:从概念理解Lucene的Index(索引)文档模型
  8. android SDK 更新
  9. canvas加载图像
  10. 解决Macbook网络连接成功但是图标一直显示正在查找网络问题
  11. shell编程学习笔记(八):Shell中if判断的使用
  12. Globecom 2018 投稿过程
  13. In Compiler.php line 36: Please provide a valid cache path.
  14. [ZZ]知名互联网公司Python的16道经典面试题及答案
  15. curl wget 不验证证书进行https请求【转】
  16. day 48 ORM 进阶 多表连接 创建 以及 html模板继承
  17. 分布式事务,EventBus 解决方案:CAP【中文文档】(转)
  18. 02--CSS的继承性和层叠性
  19. mysql5.7用户密码策略问题
  20. VBA 学习

热门文章

  1. WebSocket学习简书
  2. python-json与字典的区别
  3. 手写一个简单的ElasticSearch SQL转换器(一)
  4. Javascript进阶必会
  5. HTTP协议与使用Python获取数据并写入MySQL
  6. Java8系列 (五) Optional类
  7. sqlmap日常使用
  8. 关于生成器generator
  9. JavaSE语法(中)
  10. B/b.cpp:表达式化简,二分答案