当前位置:首页 > 日记 > 正文

JavaScript用二分法查找数据的实例代码

JavaScript用二分法查找数据的实例代码

 整理文档,搜刮出一个JavaScript用二分法查找数据的实例代码,顺便做个笔记

//二分法查数据 var arr=[41,43,45,53,44,95,23]; var b=44; var min=0; var max=arr.length; for(var i=1;i<arr.length;i++){ //外层循环控制排序的次数  for(var j=0;j<arr.length-i;j++){//内层循环控制循环的个数    if(arr[j]<arr[j+1]){    z=arr[j];    arr[j]=arr[j+1];    arr[j+1]=z;    }     }     }    // alert(arr[3])  while(true){           //二分查数就是先把一组数据按顺序排好后,从中间将这一组数据一分为二,看想要查得数在哪个范围内,然后再一分为二,直到找/* for(var i=0;i<arr.length;i++)*/  //这么写不对?              这个数为止   var zjs=parseInt((min+max)/2); //因为(min+max)/2有可能为小数,所以加上一个整数强制转换   if(zjs==min){    当要查找数的数组为一个偶数个数的数组的时候最后剩下的数的个数为2的时候,需要加个条件再给判断一下                      if(b=arr[zjs+1]){       alert(zjs+1);       break;       }       }   if(b==arr[zjs]){     alert(zjs)     break;}   else if(b>arr[zjs]){    min=zjs; }    else{max=zjs}} 

10个成绩求总分,最高分,最低分

var arr = new Array(80,70,86,58,90,35,89,67,50,100);  var sum = 0;  var maxd = 0;  var mind = 100;  //想要查最小数最好用满分最大数做可以比较的基数  for(var i=0;i<arr.length;i++){    sum = sum +arr[i];    if(arr[i]>maxd){      maxd = arr[i];    }    if(arr[i]<mind){      mind = arr[i];    }        }  alert(sum);  alert(maxd);  alert(mind); 

往数组添加一个不重复的数

//var a=7; var a=parseInt(prompt("请输入一个数")); var x=0; var arr=[1,2,3,4,5] for(var i=0;i<arr.length;i++){   if(a==arr[i]){     x=1;     break;}}    if(x==0){      arr.push(a)}      alert(arr.length) 

二分法查找数据之前没有接触过类似的题,思路想不出,老师讲完以后还是似懂非懂的样子,自己敲出以后才感觉是懂了,冒泡排序看着挺容易的,但是到了自己去亲自敲代码的时候,自己又出错,不能总是比着葫芦画瓢,应该有自己的理解,为什么要这么敲,多多敲敲代码,避免以后再出类似的小错误,自己定义的变量要记住,前后呼应起来,不能定义的时候用的一个,用的时候又是另一个,还有分号记得加,花括号记得加。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关文章

OAuth认证协议中的HMACSHA1加密算

OAuth认证协议中的HMACSHA1加密算

加密算法,协议,认证,实例,电脑软件,实例如下:<?phpfunction hmacsha1($key,$data) { $blocksize=64; $hashfunc='sha1'; if (strlen($key)>$blocksize) $key=pack('H*', $hashfunc($key)); $key=str_pad($key,$blocksize,chr(0x00)); $…

Photoshop快速制作蒙太奇创意人像

Photoshop快速制作蒙太奇创意人像

教程,蒙太奇,创意,人像,海报,下面小编将教大家如何使用Photoshop快速制作蒙太奇创意人像海报?教程难度不大,只要简单几步就可以轻松完成蒙太奇创意人像海报的制作,可谓是简单粗暴,不过效果却非常惊艳,好了,话不多说,下面让我们先了解一下蒙太奇的…

Angular限制input框输入金额(是小数

Angular限制input框输入金额(是小数

输入,保留两位小数,金额,小数,电脑软件,需求输入框要求输入金额,只能输入数字,可以是小数,必须保留小数点后两位。js判断部分:checkInput: function (event) { var id = event.target.getAttribute(“id”);//获取input的id var reg = /^[-?\d…

excel表格双行工资条如何制作

excel表格双行工资条如何制作

制作方法,工资条,表格,电脑软件,excel,  Excel中单行工资条的制作方法&rdquo;中详细介绍了单行工资条的制作。在本文我们,在来看看双行工资条的制作方法。以下是小编为您带来的关于excel 双行工资条制作方法,希望对您有所帮助。excel 双行…

AI超详细教程:手把手教你绘制复古

AI超详细教程:手把手教你绘制复古

详细教程,绘制,掌机,手把手教你,复古风,编者按:今天的教程特别适合新手,都是基础知识,而且步骤特别细致,软件小白也可以轻松学会。效果图:主要过程:12 3 4 阅读全文1 23 4 阅读全文1 2 34 阅读全文教程结束,以上就是AI超详细教程:手把手教你绘…

在Excel2016表格中怎么样调整图表

在Excel2016表格中怎么样调整图表

调整,图表,大小,表格,电脑软件,  我们在Excel中插入图表之后,往往因为图表的大小过大或者过小而对图表进行调整,在Excel2016中调整图表大小的方法有很多种。以下是小编为您带来的关于Excel 2016中调整图表大小,希望对您有所帮助。Excel 2016…

jQuery实现的粘性滚动导航栏效果实

jQuery实现的粘性滚动导航栏效果实

源码下载,导航栏,实例,效果,电脑软件,本文实例讲述了jQuery实现的粘性滚动导航栏效果。分享给大家供大家参考,具体如下:粘性滚动是当导航在滚动过程中会占粘于浏览器上,达到方便网站页面浏览的效果,也是一种用户体验,下面我们看一下是怎么实现的…

安装vue-cli报错 -4058 的解决方法

安装vue-cli报错 -4058 的解决方法

解决方法,安装,报错,电脑软件,vue,本人在安装vue脚手架时报这样的错,我访问了漫山遍野还是没找到答案,有人叫我用cnpm安装,但是cnpm安装的vue有好多坑在里面:npm WARN checkPermissions Missing write access to C:\Users\liuyg\AppData\Ro…

AI制作漂亮的彩虹英文字母logo教程

AI制作漂亮的彩虹英文字母logo教程

教程,彩虹,英文字母,漂亮,电脑软件,版权申明:本文原创作者&ldquo;酷九设计&rdquo;,感谢&ldquo;酷九设计&rdquo;的原创经验分享!字母LO在电商,或者一些食品、婴儿用品、玩具类的领域越来越流行,这篇教程就教的AI学习者们使用AI制作漂亮的彩虹英文…

JavaScript中的FileReader预览上传

JavaScript中的FileReader预览上传

功能实现,上传,代码,电脑软件,JavaScript,关于filereader图片预览上传功能的实现代码如下所示:html:<div style="width:200px;height:200px;"> <label for="ceshi" style="display:block;"> <img style="width:200px;height:200px;…

实用篇:PS合成的五个要点

实用篇:PS合成的五个要点

要点,电脑软件,PS,PS最大的强项就是合成,图片合成。那么在实际工作中,的朋友们是否觉得做合成打开PS之后无处下手,做完之后总觉得缺少故事情节?或者说做完之后感觉作品不真实,总是少了那么一点味道。如果您有这些问题,那么这篇"PS图片合成的五个…