A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© sven556677 中级黑马   /  2015-8-22 22:20  /  219 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.cn.test;
  2. /**
  3. ** 二分法查找
  4. */
  5. public class BinarySearch {
  6.        
  7.         public static int search(int[] arr,int val){
  8.                 int start=0,end=arr.length-1;
  9.                 while(start<=end){//注意这个循环有两个收敛要素
  10.                         int mid=(start+end)/2;//第一个收敛要素,mid
  11.                         if (arr[mid]>val) {
  12.                                 end=mid-1;//第二个收敛要素,start/end
  13.                         }
  14.                         else if(arr[mid]<val){
  15.                                 start=mid+1;
  16.                         }
  17.                         else return mid;
  18.                 }
  19.                 return -1;
  20.         }
  21.         public static void main(String[] args) {
  22.                 // TODO 自动生成的方法存根
  23.                 int[]a={3,4,7,8,9};
  24.                 System.out.println(search (a,8));
  25.         }

  26. }
复制代码

1 个回复

倒序浏览
不明觉厉·······
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马