1. 程式人生 > >一行程式碼搞定二分查詢(java版)

一行程式碼搞定二分查詢(java版)

效果如圖:

public static int rank(double key,double[] a,int lo,int hi){

return lo>hi?-1:key<a[lo+(hi-lo)/2]?rank(key,a,lo,lo+(hi-lo)/2-1):key>a[lo+(hi-lo)/2]?rank(key,a,lo+(hi-lo)/2+1,hi):lo+(hi-lo)/2;}

哈哈哈有點反人類,但是可以正常執行,可以加個橋方法,便於呼叫

poblic static int rank(double key, double[] a){

return rank(key, a, 0, a.length-1);}