自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 后缀数组的应用

想要了解后缀数组,可以在网上搜索罗同学的论文,这里的代码更容易理解些。构造后缀数组并求这些数组的最长公共前缀是基本操作,就用途来说没有意义,一般都是利用这个结果进行其它操作,它在很多OJ题或面试题里的字符串操作中会用到,下面是一些例子:1. 求一个字符串所有不同的子串个数(子串意味着是连续的)。比如“abaaba”,它的字串包括:a, b, aa, ab, ba, aba, baa,  aab

2016-01-18 12:32:59 701

原创 manacher算法求最长回文子串(Longest Palindromic Substring)

经典的快速求最长回文子串的算法是manacher算法(俗称“马拉车”),时间复杂度o(n),感觉能在o(n)时间内解决问题的算法都是神啊。不过这个算法用处比较单一,思想也不具有普遍性。回文这个东西,本来用的就不多,看看理解一下就好。推两篇博文:博文一,博文二。一是英文,二是中文,看完之后就应该能理解的差不多了,其中博文二在博文一的参考文献里,外国人居然也看中文博客,惊奇!下面自己对一些比较

2016-01-14 12:17:25 421

原创 倍增算法的另一种解法

网上一搜索倍增算法,基本就是罗穗骞同学的介绍。这同学高中时期就研究这么深入,让我这研究生毕业的人汗颜,慢慢爬坑吧。不过说实在的,这代码写的实在看着有点费劲。网上又有人整理了下。不过我看的还是一头雾水,希望有明白人能说明一下。要想了解倍增算法,最好先对RMQ和基数排序算法有一定了解,还要了解一下后缀数组。下面把代码贴过来。例子图如下:但是代码的实现和这个图出入很大,不好理解。

2016-01-08 15:28:40 4208

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除