2016年6月6日

Leetcode 90. Subsets II

摘要: Given a collection of integers that might contain duplicates, nums, return all possible subsets. Note: The solution set must not contain duplicate sub 阅读全文

posted @ 2016-06-06 16:07 时间的女儿 阅读(174) 评论(0) 推荐(0) 编辑

找出最长回文子串之Manacher算法

摘要: Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longes 阅读全文

posted @ 2016-06-06 10:00 时间的女儿 阅读(474) 评论(0) 推荐(0) 编辑

2016年5月25日

字符串匹配之BM算法

摘要: 一、前言 在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前被认为最高效的字符串搜索算法,它由Bob Boyer和J Strother Moore设计于1977年。 一般情况下,比KMP算法快3-5倍。该算法常用于文本编辑器中的搜索匹配功能,比如大家所熟知的GNU grep命令使 阅读全文

posted @ 2016-05-25 14:52 时间的女儿 阅读(1486) 评论(0) 推荐(0) 编辑

2016年5月23日

字符串匹配之KMP算法

摘要: 1、前言: leetcode上的28. Implement strStr()就是一个字符串匹配问题。字符串匹配是计算机的基本任务之一。所以接下来的两篇日志,都对相关的算法进行总结。 2、暴力求解算法 如果用暴力匹配的思路,并假设现在文本串S匹配到 i 位置,模式串P匹配到 j 位置,则有: 如果当前 阅读全文

posted @ 2016-05-23 17:37 时间的女儿 阅读(234) 评论(0) 推荐(0) 编辑

2016年5月22日

将两个排好序的序列合并成一个(指针和数组分别实现)

摘要: 2、数组实现,可以和指针采用类似的方法。要申请一个中间数组。若题目要求将合并的数组保存到num1中,我们可以最后将中间数组的值拷贝到num1中。 若要求不让使用中间变量,可以使用以下算法 两种方法时间复杂度为均为O(n) 阅读全文

posted @ 2016-05-22 10:34 时间的女儿 阅读(886) 评论(0) 推荐(0) 编辑

导航