07/11/05 16:13:02
>>534
public class BinarySearch {
public static void main(String[] args) {
int[] a = {1,2,3,4,5,6,7,8,9,10};
int target = 2;
int result = binarySearch(a, target);
if(result > -1){
System.out.println("要素番号 = " + result);
}else{
System.out.println("見つかりませんでした");
}
}
public static int binarySearch(int[] a, int target){
int left = 0;
int right = a.length - 1;
while(true){
int mid = (left + right)/2;
if( target == a[mid] ){
return mid;
}
else if( left == right ){
return -1;
}
else if( target < a[mid] ){
right = mid - 1;
}
else{
left = mid + 1;
}
}
}
}