最新下载
热门教程
- 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 
详细解析java算法之二分查找法的实例
时间:2022-06-29 01:25:02 编辑:袖梨 来源:一聚教程网
java算法之二分查找法的实例详解
原理
假定查找范围为一个有序数组(如升序排列),要从中查找某一元素,如果该元素在此数组中,则返回其索引,否则返回-1。通过数组长度可取出中间位置元素的索引,将其值与目标值比较,如果中间位置元素值大于目标值,则在左部分进行查找,如果中间位置值小于目标值,则在右部分进行查找,如此循环,直到结束。二分查找算法之所以快是因为它没有遍历数组的每个元素,而仅仅是查找部分元素就能找到目标或确定其不存在,当然前提是查找范围为有序数组。
Java的简单实现
packageme.geed.algorithms;
  
publicclassBinarySearch {
  
  /**
   * 从一个有序数组(如升序)中找到值为key元素
   * @param key
   * @param array
   * @return 如果找到目标元素,则返回其在数组中的索引,否则返回-1
   */
  publicstaticintfind(intkey,int[] array){
    intlow =0;
    inthigh = array.length -1;
    while(low  key) {
        high = mid -1;
      }elseif(array[mid] 
				
输出结果为:
二分查找算法的时间复杂度
假设范围数组长度为N,则二分查找的时间复杂度为O(logN)
原文链接:http://blog.*csd**n.net/ahence/article/details/50411751
相关文章
- 过山车之星2游乐园评分提高方法分享 11-04
 - 过山车之星2游戏收费设置技巧分享 11-04
 - 大侠立志传白猿白首怎么领养-白猿白首领养攻略 11-04
 - 炉石传说标准模式假人战卡组推荐分享 11-04
 - 炉石传说行星萨高爆发OTK卡组分享 11-04
 - 炉石传说标准模式元素法卡组推荐分享 11-04