使用二分法步骤如下:
给数据排序
使用二分查找
举例,一个json格式的分级数组的二分应用:
给数据排序
使用二分查找
function BinSearch(R,K) { //在有序表R[1..n]中进行二分查找,成功时返回结点的位置,失败时返回零 var low=1,high=n,mid; //置当前查找区间上、下界的初值 while(low<=high){ //当前查找区间R[low..high]非空 mid=(low+high)/2; if(R[mid].key==K) return mid; //查找成功返回 if(R[mid].kdy>K) high=mid-1; //继续在R[low..mid-1]中查找 else low=mid+1; //继续在R[mid+1..high]中查找 } return 0; //当low>high时表示查找区间为空,查找失败 } //BinSeareh
举例,一个json格式的分级数组的二分应用:
if(!!data && !!data[opts.jsonName] && !!va){ var low = 0; var high = data[opts.jsonName].length-1; var lengthp = data[opts.jsonName].length-1; while(low<=high){ midp=Math.ceil((low+high)/2); if(data[opts.jsonName][low]['id']>va){ midp = low; low = high+3; }else if(data[opts.jsonName][high]['id']<=va){ midp = high+1; low = high+4; } else if(data[opts.jsonName][midp-1]['id'] == va || (data[opts.jsonName][midp-1]['id']<va && data[opts.jsonName][midp]['id']>va)) { low=high+1; } else if(data[opts.jsonName][midp-1]['id']>va){ high = midp-1; }else{ low=midp+1; } }
发表评论
-
Android音频视频文件
2012-12-13 10:29 02010-10-16 17:28:20| 分类: Andro ... -
mysql命令
2012-11-13 17:49 0[url] http://imdiandian.me/blog ... -
关闭端口占用
2012-11-13 10:22 0要想知道某个端口被哪个应用程序占用了,有两种方法: 1.Ne ... -
eclipse快捷键
2012-10-24 10:31 0Eclipse中10个最有用的快 ... -
ext提示
2012-10-18 17:54 0这两天在整理extjs4.1的 ... -
ext4的form字段扩展
2012-10-15 11:45 0Ext.apply(Ext.form.field.VTyp ... -
springMVC从map中读取数据显示在jsp上
2012-09-27 11:19 0六、Model、Map、ModelMap Spring We ... -
转:带图片的单选按钮
2012-09-21 10:59 0一个很好值得学习的方法,平常我们做单选按钮时用的比较多的是单选 ... -
(转)把 label 放在 input 中
2012-09-21 10:58 0http://gugod.org/2009/3/6/_labe ... -
jQuery的基本设计思想和主要用法
2012-08-27 18:17 0从前几天开始到一月底之前,一直都会很忙,每天晚上都是一点之后睡 ... -
draggable.js源码分析
2012-08-27 11:31 0/** * draggable - jQuery Ea ... -
手机app界面平板ui
2012-08-13 15:21 0分类:手机app界面平板ui界面游戏ui界面后台登录界面图标设 ... -
spmenu
2012-08-10 17:32 0body,div,ul,dl,dd,li,p,h1,h2, ... -
实际中遇到的IE6bug汇总
2012-08-08 12:07 0在IE6中select若无初始值,显示不正常,将变窄 &l ... -
json2xml
2012-08-03 14:46 0//获取obj转化的字符串 function json2 ... -
浮动层失去焦点隐藏
2012-08-01 17:29 0var div; //层内的link点击事件,注意让事件 ... -
js与xml
2012-08-01 14:39 0<script> function crea ... -
处理图片
2012-07-31 17:21 0jquery.imgareaselect 处理 ... -
字符串操作
2012-07-31 16:02 0一、字符串的创建 创建一个字符串有几种方法。最简单的是用引号 ... -
js字符串大小写转换的几种方法
2012-07-31 16:00 0js字符串大小写转换的 ...
相关推荐
matlab开发-最小性的二分法算法。二分法求H无穷大的GAMA值
二分法的一些总结和方法,并用word给出了一版matlab程序
二分法计算函数的根
力扣——二分法总结(python)(csdn)————程序
二分法流程图1
对称三对角矩阵特征值的二分法[总结].pdf
数值计算中关于二分法的一个程序
C语言实现的二分法快速查找|二分法排序|二分法查找C#
二分法和迭代法算法的一点知识,相互学习哈
二分法(dichotomie) 即一分为二的方法. 设[a,b]为R的闭区间. 逐次二分法就是造出如下的区间序列([an,bn]):a0=a,b0=b,且对任一自然数n,[an+1,bn+1]或者等于[an,cn],或者等于[cn,bn],其中cn表示[an,bn]的...
对于随机输入n个整数,从键盘终端输入查找的目标值,查找该值,并报告结果,若找到则输出所以位置,及个数,若没找则输出没找到。
二分法排序算法 C语言实现 个人爱好 希望相互学习
使用二分法解线性方程二分法解线性方程二分法解线性方程
利用java二分法来计算最靠近值,通过二分法来遍历数据,得到想要最近值
c 二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法查找二分法...
二分法
VB 二分法求方程根 VB 二分法求方程根 VB 二分法求方程根
本例实现了用c语言实现了二分法求解方程。本例主要介绍用二分法求解方程f(X)=sin(x)在(-3,7)这个范围内的解C语言实现方法。 求解主要通过函数BisectRoot()来完成。该函数首先根据二分法的需要扫描根的存在 及根的...
二分法解方程,利用c语言实现。。。。。。。。。。。。。
二分法实现.txt二分法实现.txt二分法实现.txt