|
分享源码
界面截图: |
|
是否带模块: |
- |
备注说明: |
- |
本帖最后由 微凉 于 2012-6-25 14:32 编辑
效果演示图:
吃尾算法的原理解析:
所谓吃尾算法,顾名思义就是吃掉尾巴的算法
什么是吃掉尾巴?
吃掉尾巴通俗来说就是: 头的数据吃掉尾的数据
吃掉尾巴的优势是什么?
大家观察代码,发现代码
外循环总是从 "数组总数" 开始枚举的
内循环也是从 "数组总数" 枚举的,
但注意内循环的循环代码,头部定义 结束值为 i+1(亮点)
并且内循环会把相同的代码删除保留自己,也就是 所谓的 " 吃尾巴 "
这样做有什么好处呢?
这样做的好处是,不用再次枚举已经枚举过的数据
有利于提高枚举速度和处理重复数据的效率
提高大量数据处理速度 是否可加判断代码?
相对于我电脑来说,1W条数据处理加与不加这段判断代码是一样的
经过我大量数据的测试,见下表
| 加(毫秒) | 不加(毫秒 | 1万条 | 157 | 185 | 2万条 | 531 | 453 | 3万条 | 1094 | 1063 | 4万条 | 1688 | 1672 | 5万条 | 2172 | 2032 | 结论:上表的速度以毫秒为单位的,显然不加上图的代码比加了的速度快的
为什么会这样?
因为变量循环本身就是一个判断的代码,如果目标值比当前值小,他并不会执行.
并且,重复使用 取数组成员() 会使除重复速度速度变慢,并不会使速度更快.
所以,不加额外判断代码 比 加了额外判断代码 快
源码下载:
吃尾算法.zip
(1.72 KB, 下载次数: 767)
|
评分
-
查看全部评分
本帖被以下淘专辑推荐:
- · 精品资源|主题: 559, 订阅: 229
- · 开源无敌|主题: 31, 订阅: 9
- · 精品汇|主题: 35, 订阅: 2
- · 易语言源码|主题: 2, 订阅: 0
|