效能分析 爆打团队 题目去重功能代码优化

测试的题目记录为随机生成

10000题目记录,去掉重复后剩余8569.

O(n^2)算法 1s   O(n*log(n))算法 0.1s

100000题目记录,去掉重复后剩余30565.

O(n^2)算法 30.8s   O(n*log(n))算法 0.59s

200000题目记录,去掉重复后剩余31940.

O(n^2)算法 69s   O(n*log(n))算法 1s

 

实验证明,算法复杂度有明显优化效果。差距没有十分明显的原因在于重复的太多了,那么进入different数组的就少,第二维的枚举时间短,因此我邪恶的把筛过后不重复的作为输入。

 

31940不重复

O(n^2)算法 11s   O(n*log(n))算法 0.3s

 

个人观点,当数据量足够大时,优化是有明显效果的,有必要的。

posted on 2016-04-13 21:28  gaolzzxin  阅读(150)  评论(2编辑  收藏  举报