Java代码—查找数组中的指定元素的位置
/**
* 查找数组中指定元素(顺序查找)
*/
class Demo6 {
public static void main(String[] args) {
int[] array = {1,2,4,3,5,6,7,10};
System.out.println(find(array,5));
}
private static int find(int[] array, int tofind) {
for(int i = 0; i < array.length; i++){
if(array[i] == tofind){
return i;
}
}
return -1;
}
}
/**
* 查找数组中指定元素(二分查找)
*/
class Demo7 {
public static void main(String[] args) {
int [] array = {1,2,3,4,5,6,7,8,32};
System.out.println(binarySearch(array,32));
}
private static int binarySearch(int[] array,int tofind){
int left = 0;
int right = array.length-1;
while(left <= right){
int mid = (left + right)/2;
if(tofind < array[mid]){
right = mid - 1;
}else if(tofind > array[mid]){
left = mid + 1;
}else{
return mid;
}
}
return -1;
}
}