编程之美 set 9 字符串移位包含问题

题目

给定字符串 s1 和 s2, 要求判定 s2能否能够被通过 s1 做循环移位得到的字符包含. s1 = AABCD, s2 = CDAA 返回 true. 给定 s1 = ABCD 和 s2 = ACBD 返回 false

解法

1. 最直接的方法是对 s1 进行移位然后比较. 若 s1 较长, 那么效率较低

2. 题目转化成比较 s2 是否在 s1s1 中, 这样可以利用 kmp 等算法提高对比效率

上一篇:NancyFX 第八章 内容协商


下一篇:如今火爆的区块链技术到底是什么鬼?