代码改变世界

推荐排行榜

数组排序方法的性能比较(4):LINQ方式的Array排序

2010-01-28 00:06 by Jeffrey Zhao, 9337 阅读, 收藏,
摘要: 经过前两篇文章的分析,我们已经了解了Array.Sort与LINQ排序两种实现方式的差别:前者直接比较两个元素的大小,而后者先选出每个元素的“排序依据”再进行比较。因此,虽然后者需要相对较多的“周边工作”,但由于每次比较时都可以仅仅使用高效的基础类型(如int),因此从整体来看,两者的性能高低难以辨别。不过,既然我们已经了解LINQ排序“高效”的原因,又能否将其利用在数组排序上呢?程序是人写的,此类问题大都有肯定的答案。那么我们现在就来实现一下。 阅读全文

数组排序方法的性能比较(2):Array.Sort<T>实现分析

2010-01-22 00:06 by Jeffrey Zhao, 12637 阅读, 收藏,
摘要: 昨天我们比较了Array.Sort方法与LINQ排序的性能,知道了LINQ排序的性能以较大幅度落后于Array.Sort方法。而对于Array.Sort来说,性能最高的是其中使用Comparer.Default作为比较器的重载方法。在前文的末尾我们做出了推测:由于排序算法已经近乎一个标准了(快速排序),因此从算法角度来说,Array.Sort方法和LINQ排序上不应该有那么大的差距,因此造成两者性能差异的原因,应该是具体实现方式上的问题。 阅读全文

按月统计博客园单个用户的发文数量

2010-01-11 00:07 by Jeffrey Zhao, 8132 阅读, 收藏,
摘要: 这几天在家闲着,便试着写一些小程序。之前有朋友问到“F#能不能写Web”,于是我也就打算这么一试。虽然我能肯定,用F#写Web应用程序不会是问题,不过倒真还没有做过这方面的尝试。我想,如果用F#写Web应用程序,那么它很重要的一点,应该是利用其在异步编程方面的强大特性。最后我决定,使用F#编写一个按月统计博客园单个用户发文数量的简单服务。尝试的结果是——还有些问题没有解决。不管怎么样,我先把其主体逻辑描述一下吧。 阅读全文

浅谈代码的执行效率(1):算法是关键

2010-01-07 17:14 by Jeffrey Zhao, 15098 阅读, 收藏,
摘要: 前一段时间在博客园里看到这样一篇文章,那位兄弟谈到程序效率的关键是“简短”。他说,“程序越简短,其可执行代码就越少,就越有效率”,而在编写程序的时候,“要尽量改进我们的算法,而改进算法中最重要的一条,就是减少语句”。这句话从表面上似乎正确,但我认为性能这问题不能用“简短”这种方式去思考,否则会进入一些误区。我整理了一下思路,希望可以从几个方面把详细谈一下这个问题。首先我想说的是:“简短”不是关键,“算法”更加重要。 阅读全文

AV不识爱卖克,便看三弟也枉然

2010-01-07 10:39 by Jeffrey Zhao, 9122 阅读, 收藏,
摘要: 阿凡达,已然无人不知无人不晓。江湖流传:“AV不识爱卖克,就看三弟也枉然”。此处AV自然指的就是Avatar,这句话意思是说,如果你没有看iMax的阿凡达,就算是看了3D版也等于没看过。因此,对于全国只有11块的iMax屏幕,大家自然就是疯抢了。而上海这边,只有位于人民广场的和平影都有这条件,试想全上海有这想法的人都涌到同一个地方,抢这个每日一千多(350 * 4场)人次的机会……是什么景象。 阅读全文
上一页 1 ··· 39 40 41 42 43 44 45 46 47 ··· 67 下一页