摘要: 本文讨论了最长公共子串的的相关算法的时间复杂度,然后在后缀数组的基础上提出了一个时间复杂度为o(n^2*logn),空间复杂度为o(n)的算法。该算法虽然不及动态规划和后缀树算法的复杂度低,但其重要的优势在于可以编码简单,代码易于理解,适合快速实现。 阅读全文
posted @ 2014-09-03 15:37 youngzii 阅读(1577) 评论(0) 推荐(0) 编辑
摘要: 笔者在这里介绍一种使用cl.exe编译源文件的方法,可以手动执行编译过程而不再依赖IDE,此外,笔者还介绍一些使用cl.exe编译简单源代码的方式。 cl.exe是windows平台下的编译连接程序,其作用是将源代码编译并连接成对象文件(*.obj)并自动生成可执行文件(*.exe)。当然,cl.exe还有很多高级功能,在命令行中输入"cl.exe /?"可查看细节。 笔者在win 7(x86)系统中安装的IDE为VS2010,采用默认的安装配置,安装后cl.exe的文件路径为: C:\Program Files\Microsoft Visual Studio 10.0\V 阅读全文
posted @ 2013-10-29 20:17 youngzii 阅读(6205) 评论(0) 推荐(3) 编辑
摘要: PyGraphviz是Python的一个用于绘图的接口,相比matplotlib而言,PyGraphviz提供了更加抽象,更加快捷高效地绘图功能。笔者在摸索之后成功使用PyGraphviz制作了第一张图,此文的主要目的在于提供软件安装到使用的细节,供新入门的读者参考,有错误的地方还请大家指出来。平台:Win7+Python2.7.5+接口PyGraphviz+graphviz其具体步骤如下:1,下载并安装Python,Python下载地址为http://www.python.org/getit/,下载选择Python版本时参看步骤2,PyGraphviz对Python有版本要求。笔者选择版本为 阅读全文
posted @ 2013-05-23 16:48 youngzii 阅读(4409) 评论(2) 推荐(0) 编辑
摘要: 在数据类型前加上关键字“const”,如const type name=value1,则变量name的值不能更改。但是,name的值并不真的是不可修改的。看这段代码:const int a=100;(int &)a=20;//编译运行都ok此处通过强制类型转换为非常量引用,使得常量a的值可以修改了。但笔者发现下面的代码就是错误的:const int a=100;(int)a=20;//编译error,提示‘=’:左操作数必须为左值更奇怪的是:const float b=0.0;(float)b=1.0;//编译运行,okconst flaot c=0.1;(float&)b=1 阅读全文
posted @ 2013-04-23 22:32 youngzii 阅读(203) 评论(0) 推荐(0) 编辑