首页 > 其他 > 详细

判断一个字符串是另一个字符串的循环移位

时间:2014-01-28 23:01:34      阅读:615      评论:0      收藏:0      [点我收藏+]

例如一个字符串:s1 = ABCD 和 s2 = ACBD

检查一个字符串s1 是不是 由 s2 循环移位得到的

 

思路如下: 可以变化字符串s1 为 ABCDABCD

这样判断s2 是不是 s1 的字串

那么,我们可以用前面写的KMP匹配算法来判断一个字符串是否是另一个字符串的字串

bubuko.com,布布扣
#例如一个字符串aaabbb,又有一个字符串bbaaab,
#判断后一个字符串是不是另一个字符串进行旋转后所得到的

import KMPAlgorithm
def  isContainOther(string1,string2):
    if KMPAlgorithm.KMPAlgorithm(string1,string2):
        print "string2 is sting1 rotation type"
    else:
        print "string2 can not make by string1"


def connectString(string1):
    string1 += string1
    return string1



if __name__ == "__main__":
    string1 = "ABCD"
    string2 = "CDAA"

    isContainOther(string2,connectString(string1))
bubuko.com,布布扣

判断一个字符串是另一个字符串的循环移位

原文:http://www.cnblogs.com/lgy6534588/p/3535853.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!