2010-05-11

Code Jam

做了Google Code Jam 2010的Qualification Round的三道题,开始都是用 Haskell 写的,第三道在处理大数据集时总是堆栈溢出,无奈之下改用了 Python,修改了一下算法,加入一个哈希表,避免重复运算,果然一下就搞定了。心里有了底之后修改了 Haskell 程序里面的代码,也加入一个 IntMap,也搞定了。

昨天在 reddit 上看见一位大牛,解决三道题用了六种语言 (每道题有小数据集、大数据集),实在强悍。我的实现在Hg仓库里,链接

几点体会:

  1. 用 Haskell 处理状态的时候还是比较不习惯,尤其涉及改动函数接口或者临时调试;

  2. 在处理大规模时算法的性能远比语言本身的性能重要;

  3. 掌握一门瑞士军刀语言(可以用它快速的做任何事)。


很久没有如此专注过。程序设计涉及语言特性、算法、计算机体系结构,其实,短了任意一个都是缺憾。

标签: ,

0 Comments:

发表评论

<< Home