2014年1月28日

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

摘要: 例如一个字符串:s1 = ABCD 和 s2 = ACBD检查一个字符串s1 是不是 由 s2 循环移位得到的思路如下: 可以变化字符串s1 为 ABCDABCD这样判断s2 是不是 s1 的字串那么,我们可以用前面写的KMP匹配算法来判断一个字符串是否是另一个字符串的字串#例如一个字符串aaabbb,又有一个字符串bbaaab,#判断后一个字符串是不是另一个字符串进行旋转后所得到的import KMPAlgorithmdef isContainOther(string1,string2): if KMPAlgorithm.KMPAlgorithm(string1,string2): ... 阅读全文

posted @ 2014-01-28 17:49 lgy111 阅读(663) 评论(0) 推荐(0) 编辑

动态规划思想-----求数组中出现最多数

摘要: 问:一个数组中,有一个数出现的次数大于数组长度的一半,求出这个数#选择出出现次数最多的那个数字#假定那个数的次数大于数组中的数目总和的一半以上#思路:#那么我们可以认为这个数字的出现数字大于其他所有数字出现的次数总和def selectMostNumber(numbers): currentA = numbers[0] numberCount = 0 for currentNumber in numbers: if currentNumber != currentA: numberCount -= 1 if numbe... 阅读全文

posted @ 2014-01-28 14:53 lgy111 阅读(308) 评论(0) 推荐(0) 编辑

KMP匹配算法

摘要: KMP匹配算法,原理参考http://www.ruanyifeng.com/blog/2013/05/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm.html难点在于next数组的求解。参考算法导论的思路求解next数组:详见http://www.cnblogs.com/c-cloud/p/3224788.html然后用Python实现了一下。def makeNext(parttenString): next = [] m = len(parttenString) k = 0 next.append(0) p = 1 ... 阅读全文

posted @ 2014-01-28 14:38 lgy111 阅读(254) 评论(0) 推荐(0) 编辑

好久没有更新了

摘要: 这段时间在appannie实习。。技术上提升不大,做的东西没啥含量。与自己的期盼相差有点大。sigh。静下心来自己学习东西。争取花个半年时间把师兄推荐的书给看了。回家也挺无聊的。 阅读全文

posted @ 2014-01-28 14:32 lgy111 阅读(123) 评论(0) 推荐(0) 编辑

导航