摘要:
在程序语言中,字符串可以说是最常用的一种类型,而在程序中对字符串的操作也是十分频繁。当程序语言自带多种字符串操作的方法时,用该语言编程程序时就有很多的便利性,提高开发的效率。但是当方法过多,甚至目的相似、参数雷同的时候,就容易造成迷惑难以选择的窘境。在JavaScript中就有这样的情况出现,对于取字符串的子串的操作,JavaScript提供了三种不同的方法:slice,substr,substring。虽然在网上随便搜索一下,就可以找到介绍三者区别的文章,但是每次使用的时候,依然会迷糊无从选择。因此结合网上介绍的区别,在本文中将它们的异同之处罗列在表中,方便参照和区分。测试字符串: &quo 阅读全文
摘要:
最长公共子串(Longest Common Substring)是一个非常经典的面试题目,在实际的程序中也有很高的实用价值,所以把该问题的解法总结在本文重。不过不单单只是写出该问题的基本解决代码而已,关键还是享受把学习算法一步步的优化,让时间和空间复杂度一步步的减少的惊喜。概览最长公共子串问题的基本表述为:给定两个字符串,求出它们之间最长的相同子字符串的长度。最直接的解法自然是找出两个字符串的所有子字符串进行比较看他们是否相同,然后取得相同最长的那个。对于一个长度为n的字符串,它有n(n+1)/2 个非空子串。所以假如两个字符串的长度同为n,通过比较各个子串其算法复杂度大致为O(n4)。这还没 阅读全文
摘要:
周一的苹果开发者大会上,Apple介绍了iOS 7的各种新的特性,虽然真正发布要到今年秋季,但是作为程序员我们还是可以下载开发版本来亲身体验一番的。本来想下载更新四代的iPod Touch上,但是似乎没有提供,所以只能跟同事借来一部iPone 5测试机更新到iOS 7。如果没有去年底对《Android 4.2新特性体验》,看到这一些新特性我一定会感到欣喜,但是现在体验的结果就跟看Keynote时是一样的:长得越来越像Android了。只能说有些东西就是先入为主了,做什么都应该抢个先(鲜)才行。界面小清新很高兴iOS终于支持动态壁纸了,但是默认的屏保壁纸怎么就感觉是直接搬了Android的过来呢 阅读全文
摘要:
程序员的学习过程是无止境的,程序员学习的途径是多样的。可以从视频教程中领悟,也可以从他人的代码中理解。但当我们专注于某一个平台在开发的时候,对于某个API使用或者功能实现有疑问,通常简单的测试可以让我们知道可能的效果,异或网上搜索一下别人的经验,不过最好的途径应该还是阅读官方的文档解释。常常可以更全面,具体的了解。当然也不排除有时候官方文档说了跟没说似地,或者根本说得文不对题。半年多里一直从事Mobile游戏的开发,Android和iOS平台都有接触,不过还是以iOS为主,为了解决问题也查阅了不少的文档资料。就像以前学.NET一定会去MSDN,iOS上的问题就会先去查阅Apple Develo 阅读全文
摘要:
Git最近几年非常火的版本控制(Revision Control)软件,我也在大概一年前从SVN转到了使用Git。对于大部分业余项目其实就我一个人在操作的情况下,Git明显比SVN给我带来更多的优势。后来随着GitHub的兴起,我同样可以想SVN一样有一个中心代码库,而且还可以通过网页展示来当做一份在线简历。不过GitHub在国内真正被(非技术人员)广为知晓,还是感谢春运刷票插件拖垮GitHub这一事件吧。这也算是给GitHub做了一次超强压力测试吧。随后插件似乎被铁道部叫停,但是显然这是不可能阻止已经安装在各个浏览器上的插件的。于是他们直接拿出杀手锏:把GitHub阻挡在GFW之外。 不过好 阅读全文