/**
*
*
* 项目名称:Demo
* 类名称:BinarySearch
* 类描述: 折半查找,二分查找。要求数组有序,从数组的中间进行比较,依次缩小范围* 创建人:k0441
* 创建时间:2011-10-9 下午06:40:23
* @version
*
*/public class BinarySearch {
public static void main(String[] args) {
int[] i = new int[200];
for(int a=0;a<i.length;a++){
i[a]=a;
}
System.out.println(search(i, 199));
}
public static int search(int[] i,int searchWord){
int start=0;
int middle=0;
int end=i.length;
if((end>start)&&(searchWord>=i[0])&&(searchWord<=i[i.length-1])){//数组长度大于1
middle=(start+end)/2;
while (i[middle]!=searchWord) {
System.out.println(i[middle]);
if(i[middle]>searchWord){//数组中间的数大于关键字
end=middle-1;//数组截取的终点在: 中间-1
middle=(start+end)/2;
}else {
start=middle+1;//数组街区的起点在: 中间+1
middle=(start+end)/2;
}
}
System.out.println("find out");
return i[middle];
}else {
System.out.println("error");
return 0;
}
}
}
分享到:
相关推荐
接下来是折半查找,也称为二分查找。这是一种在有序数组中查找特定元素的搜索算法。它的工作原理是每次都将查找范围缩小一半,直到找到目标值或范围为空。折半查找的效率很高,因为它减少了搜索次数,尤其对于大数据...
折半查找,也称为二分查找,适用于有序数组。它通过不断将查找范围减半来快速定位目标元素。首先,找到数组的中间元素,如果目标元素等于中间元素,则查找结束;如果目标元素小于中间元素,那么在左半部分继续查找;...
用分治法思想实现二分查找,Java语言描述。
所谓的二分查找,指的是将待查的数据序列而分化,然后对比中间中间值和要查找值,判断结果,相等则找到,小于则在左边的子序列找,大于则在右边的子序列找
**折半查找(二分查找)算法** 折半查找,又称二分查找,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两个部分,每次比较中间元素与目标值,根据比较结果缩小搜索范围。如果中间元素等于...
二分查找 折半查找
二分查找法,又称折半查找法,是计算机科学中一种高效的搜索算法,尤其适用于已排序的数据集合。在Java中,二分查找法通常用于数组或有序列表中,其核心思想是通过不断缩小搜索范围来快速定位目标元素。以下是关于...
5. **Test1.java**:这可能是一个实现上述功能的Java源代码文件,包含读取文件、处理数组、选择排序以及二分查找的逻辑。通过查看这个文件的源代码,可以学习到如何在实际项目中应用这些概念。 6. **使用前请看一下...
折半查找,也称为二分查找,是一种在有序数组中查找特定元素的搜索算法,其效率比线性查找高得多。 在Java中,传统的折半查找通常针对特定类型的数组(如整数或字符串)编写,而泛型化折半查找则可以适应任何实现了...
在Java中实现二分查找,首先需要一个已排序的数组。在提供的代码示例中,我们有一个名为`sortedArray`的整数数组,包含一系列递增的数值。目标是查找特定的`target`值。 `binarySearch`方法是实现二分查找的核心。...
Java 折半查找法,也称为二分查找,是一种高效的搜索算法,尤其适用于已排序的数组。这个算法的基本思想是通过不断将待搜索区域减半,直到找到目标元素或者确定目标元素不存在为止。以下是关于折半查找法的详细解释...
通过这段代码,我们不仅学习了折半插入排序的基本原理和实现方法,还复习了Java语言中数组的操作、二分查找算法以及基本的控制结构。这对于Java初学者来说,是一次非常有价值的实践和学习机会。
Java代码通常会定义一个方法,接受一个已排序的数组和目标值作为参数,然后使用递归或迭代的方式来执行二分查找。 通过以上内容,你可以深入理解JDBC数据库连接、冒泡排序算法以及折半查找算法在Java编程中的应用。...
分别用递归和非递归方法实现二分查找算法 的完整程序,indexof()返回的是循环实现的二分法查找,getindex()实现的是递归算法实现的二分法查找。
在给出的Java代码示例中,`BinarySearch`类包含了`binarySearch`函数,该函数实现了二分查找算法。首先,函数定义了两个指针`left`和`right`,分别表示查找范围的起始和结束索引。初始时,`left`指向数组的第一个...
二分查找,也称为折半查找,只适用于有序的数组。该方法首先将目标值与数组中间元素比较,如果目标值小于中间元素,就在左半部分继续查找;反之,在右半部分查找。每次查找都将搜索范围减半,因此效率较高,平均时间...
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素...
折半查找,又称为二分查找,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是通过将目标值与数组中间元素进行比较,根据比较结果不断缩小查找范围,直到找到目标值或者确定目标值不存在为止。折半查找的...
总的来说,掌握顺序查找和二分查找对于Java程序员来说是基础且必要的技能,它们能够帮助你更好地理解和解决实际问题,提高代码的执行效率。在日常工作中,根据具体需求选择合适的查找算法,可以有效地优化程序性能,...
在Java中实现二分查找,我们需要理解其基本原理和步骤,以及如何用代码来表达这些概念。 首先,我们要明白二分查找的前提条件:输入数据必须是有序的。这个有序可以是升序或降序,但通常我们假设为升序。二分查找的...