最近推荐时我都尽量选择主题接近的文章,比如上次都是讲Java的,这次我们换个更大众的主题,大家来聊聊算法。我知道很多人读书时都参加过ACM或者NOI,再或者是数学建模大赛,恩,听着都很高大上,本人不才,一个都没参加过,大把的时间都花在写Java和ASP做商业项目了,如果再给我一次选择的机会,我想我会去ACM校队磨练一下……
如果你想成为一个码农或是熟练工(Code Monkey),你大可以不学算法,因为算法对你确实没有用;但如果你想成为一个优秀的开发者(Developer),扎实的算法必不可少,因为你会不断的掉进一些只能借助算法才能爬出去的坑里。
为了这句话,不得不推荐这篇《我的算法学习之路》(http://zh.lucida.me/blog/on-learning-algorithms/),作者目前就职于Google London,写下了他的奋斗史,看过抄过这么多算法的书,文风很通俗易懂(其实我觉得说很屌丝化也行啊),看得我也高潮迭起,难怪我一直喊自己码农,相比之下,我还真只能算是个码农,赶紧把鲁肃大神送的《算法导论》翻出来吧,不然这辈子就离开发者越行越远了。
上一位很励志,这一位很巧,也是来自Google——Steve Yegge,虽然他在讲面试(我可没鼓动大家去面试),但其中对算法的重要性的说明还是很实际的,很多时候估计不少人也是只有在面试时才会想起算法吧……《Steve Yegge:Google面试秘籍》(http://blog.jobbole.com/39650/),文中除了算法,还提到了操作系统和数学,如果有能力,有时间,有精力,把数学学踏实了也是很有用的,我一直都相信数学系的人比计算机系的更会写代码,所以总是对数学系的同学肃然起敬……(说句题外话,后来我发现最牛逼的人大多学的是生物、英语还有艺术,可见跨界才是王道)