数组区间匹配算法解析
2017-08-04 14:06
204 查看
今天遇到一个问题:
有4个固定的成就,每个成就对应一个数字。
用户的积分超过这个数字自动获得这个成就
将这个方法作为一个公用的方法
考虑如下:
1.必须是一个单独的方法(多余)
2.输入参数固定为积分数量
3.输出参数包括当前成就名称,到达下一级需要的积分,下一级成就名称
4.扩展要好,下次修改不用改太多
5.性能要好,不能出问题
以下是JavaScript的实现版本。
可以考虑将2个数组放在外面节约一下空间,我这边的实际情况就不需要考虑了。
有4个固定的成就,每个成就对应一个数字。
用户的积分超过这个数字自动获得这个成就
将这个方法作为一个公用的方法
考虑如下:
1.必须是一个单独的方法(多余)
2.输入参数固定为积分数量
3.输出参数包括当前成就名称,到达下一级需要的积分,下一级成就名称
4.扩展要好,下次修改不用改太多
5.性能要好,不能出问题
以下是JavaScript的实现版本。
/** *输入积分数,返回成就信息集。包含积分+1操作 *num {Number} 当前积分数量 *return num {Number} 距离下一级需要的积分数量 *return type {String} 当前达到的成就名称 *return next {String} 下一级的成就名称 */ function test(num,isAdd){ var score_list=[0,500,2000,7000,16999]; var type_list=["","专访","百科","群展","个展"]; if(isAdd)num++; var index=score_list.length-1; while(num<score_list[index])index--; return { num:score_list[index+1]-num, type:type_list[index], next:type_list[index+1] } }
可以考虑将2个数组放在外面节约一下空间,我这边的实际情况就不需要考虑了。
相关文章推荐
- KMP模式匹配算法之next数组解析
- KMP模式匹配算法原理分析、next数组优化及java实现
- [置顶] 解析KMP模式匹配算法
- 集思广益,有个几百万关键字的数组的文本匹配的算法
- [置顶] 解析KMP模式匹配算法
- 算法训练 区间k大数查询(数组复制、排序算法、递归查找)
- 算法 Tricks(三)—— 数组(序列)任意区间最小(大)值
- [置顶] 解析KMP模式匹配算法
- 计算KMP模式匹配算法中next数组的代码分析及改进型KMP算法中nextval数组代码分析
- 模式匹配算法----KMP算法以及next数组的解法
- C语言找出数组中的特定元素的算法解析
- RANSAC 特征匹配算法解析
- 串的模式匹配算法——KMP算法解析
- KMP算法之我见(NEXT数组的递归解析)
- 后缀数组 + LCP加速多模式匹配算法 O(m+logn)
- 串的模式匹配算法——KMP算法解析
- 处理区间问题之树状数组与莫队算法
- 【特征匹配】RANSAC算法原理与源码解析
- 蓝桥杯 算法提高 分苹果 【差分数组 + 离线区间加 + 板子题】
- 算法竞赛 4-6 用函数交换变量 & 4-8计算数组的元素和 &4-9计算左闭右开区间内的元素和