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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 825176857 中级黑马   /  2015-7-5 00:07  /  364 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.vince.il8n;

  2. import java.util.Arrays;

  3. public class bs_009 {
  4. public static void main(String[] args){
  5.   int[] number={1,2,3,14,15,16,7,8,9};
  6.   //二分法 必须保证数列是有序的
  7.   Arrays.sort(number);
  8.   int index=binarySearch(number,4);            //不显示
  9.   System.out.println(index);
  10. }
  11. //        二分法
  12. public static int binarySearch(int[] x,int n){  //静态
  13.   int start=0;
  14.   int end=x.length-1;
  15.   int mid;
  16.   while(start<=end){
  17.    mid=(start+end)/2;
  18.    if(x[mid]==n){
  19.     return mid;
  20.    }else if(x[mid]<n){
  21.     start=mid+1;
  22.    }else if(x[mid]>n){
  23.     end=mid-1;
  24.    }
  25.   }
  26.   return -1;
  27. }
  28. }
复制代码

2 个回复

倒序浏览
不错   就是再加点注释就好了
回复 使用道具 举报
恩呢,是的,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马