实现类:
public class BinarySearch { //二分查找算法实现 public static int binarySearcjBasic(int[] a,int target){ int i=0,j=a.length-1;//设置指针和初值 while (i<=j){//范围内还有数据 int m=(i+j)/2; if (target<a[m]){ j=m-1; }else if(target>a[m]){ i=m+1; }else { return m; } } return -1; } }
测试类:
import org.junit.Test; public class TestBiarySearch { @Test public void testTrue(){ int []a={1,12,21,32,45,65,78}; int target=65; int s= BinarySearch.binarySearcjBasic(a,65); System.out.println(s); int s2=BinarySearch.binarySearcjBasic(a,99); System.out.println(s2); } }