码迷,mamicode.com
首页 > 编程语言 > 详细

Java中的二分法

时间:2018-02-02 20:06:02      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:sea   blog   alt   个数   span   class   com   数组   .com   

BinarySearch

二分法查找,顾名思义就是要将数据每次都分成两份然后再去找到你想要的数据,我们可以这样去想,二分法查找很类似与我们平时玩的猜价格游戏,当你报出一个价格时裁判会告诉你价格相对于真实值的高低,倘若是低了那我们一定会再说出一个略高的价格,反之亦然。在二分法查找时要求传入的数据必须已经有序,假设现在为升序,然后每次将所寻找的值与中间值(数组左边界+(右边界-左边界)/2)作比较,大了则去寻找中间值左侧数据,小则寻找中间值右侧数据。

 

算法:当数据量很大适宜采用该方法。采用二分法查找时,数据需是有序不重复的。

假设有一个数组 { 12, 23, 34, 45, 56, 67, 77, 89, 90 },现要求采用二分法找出指定的数值并将其在数组的索引返回,如果没有找到则返回 -1。

技术分享图片

 

Java中的二分法

标签:sea   blog   alt   个数   span   class   com   数组   .com   

原文地址:https://www.cnblogs.com/dhm520/p/8406419.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!