java学习之查找数据,在此总结了两种方法,有不对的请多多指出/**
* 二分法查找(对于有很多数据的情况下效率高)
* @param nums提供一个排序后的数组
* @param n 要查找的数字
*/
public void find1(int[] nums,int n){
int max = nums.length-1;
int min = 0;
int index = -1;
while(max >= min){
int half = (max+min)/2;
if(nums[half] == n){
index = half;
break;
}else if(nums[half] > n){
max = half-1;
}else{
min = half+1;
}
}
if(index >= 0){
System.out.println("找找到,它的下标是"+index);
}else{
System.out.println("没找到");
}
}
/**
* 在数组中查找一个数(效率较低)
* @param nums 提供一个数组
* @param n 要查找的数字
*/
public void find2(int [] nums, int n){
int index = -1;
for(int i=0; i<nums.length; i++){
if(n == nums[i]){
index = i;
break;
}
}
if(index >= 0){
System.out.println("在数组中找到了这个数,其下标为"+index);
}else{
System.out.println("在数组中没有找到这个数");
}
}
文章标题
最新推荐文章于 2025-12-19 15:39:34 发布
本文介绍了两种在Java中查找数组中特定数字的方法:一种是效率较高的二分法查找,适用于已排序的数据;另一种是在未排序数组中逐个元素比较的传统查找方式。通过这两种方法的对比,帮助读者理解不同情况下选择合适查找算法的重要性。
2987

被折叠的 条评论
为什么被折叠?



