`

折半查找 (即:二分查找) java实现代码

 
阅读更多
/**
*
*   
* 项目名称: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 快速排序 折半查找的界面实现

    折半查找,也称为二分查找,适用于有序数组。它通过不断将查找范围减半来快速定位目标元素。首先,找到数组的中间元素,如果目标元素等于中间元素,则查找结束;如果目标元素小于中间元素,那么在左半部分继续查找;...

    分治法应用(折半查找也叫二分查找)

    用分治法思想实现二分查找,Java语言描述。

    java实现折半查找算法

    所谓的二分查找,指的是将待查的数据序列而分化,然后对比中间中间值和要查找值,判断结果,相等则找到,小于则在左边的子序列找,大于则在右边的子序列找

    折半查找的递归与非递归算法

    **折半查找(二分查找)算法** 折半查找,又称二分查找,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两个部分,每次比较中间元素与目标值,根据比较结果缩小搜索范围。如果中间元素等于...

    二分查找JAVA实现

    二分查找 折半查找

    java 二分查找法的实现方法

    二分查找法,又称折半查找法,是计算机科学中一种高效的搜索算法,尤其适用于已排序的数据集合。在Java中,二分查找法通常用于数组或有序列表中,其核心思想是通过不断缩小搜索范围来快速定位目标元素。以下是关于...

    文件读出数组进行选择排序和二分查找(java)

    5. **Test1.java**:这可能是一个实现上述功能的Java源代码文件,包含读取文件、处理数组、选择排序以及二分查找的逻辑。通过查看这个文件的源代码,可以学习到如何在实际项目中应用这些概念。 6. **使用前请看一下...

    实例190 - 泛型化的折半查找法

    折半查找,也称为二分查找,是一种在有序数组中查找特定元素的搜索算法,其效率比线性查找高得多。 在Java中,传统的折半查找通常针对特定类型的数组(如整数或字符串)编写,而泛型化折半查找则可以适应任何实现了...

    史上最全,逻辑最清晰的Java经典算法教程:二分查找

    在Java中实现二分查找,首先需要一个已排序的数组。在提供的代码示例中,我们有一个名为`sortedArray`的整数数组,包含一系列递增的数值。目标是查找特定的`target`值。 `binarySearch`方法是实现二分查找的核心。...

    java 折半查找法(二分查找)实例

    Java 折半查找法,也称为二分查找,是一种高效的搜索算法,尤其适用于已排序的数组。这个算法的基本思想是通过不断将待搜索区域减半,直到找到目标元素或者确定目标元素不存在为止。以下是关于折半查找法的详细解释...

    java排序 折半法

    通过这段代码,我们不仅学习了折半插入排序的基本原理和实现方法,还复习了Java语言中数组的操作、二分查找算法以及基本的控制结构。这对于Java初学者来说,是一次非常有价值的实践和学习机会。

    JDBC连数据库的JAVA程序,以及冒泡排序,折半查找.rar

    Java代码通常会定义一个方法,接受一个已排序的数组和目标值作为参数,然后使用递归或迭代的方式来执行二分查找。 通过以上内容,你可以深入理解JDBC数据库连接、冒泡排序算法以及折半查找算法在Java编程中的应用。...

    分别用递归和非递归方法实现二分查找算法 的完整程序

    分别用递归和非递归方法实现二分查找算法 的完整程序,indexof()返回的是循环实现的二分法查找,getindex()实现的是递归算法实现的二分法查找。

    折半查找法,也称为二分查找法.pdf

    在给出的Java代码示例中,`BinarySearch`类包含了`binarySearch`函数,该函数实现了二分查找算法。首先,函数定义了两个指针`left`和`right`,分别表示查找范围的起始和结束索引。初始时,`left`指向数组的第一个...

    用java实现得各种查找

    二分查找,也称为折半查找,只适用于有序的数组。该方法首先将目标值与数组中间元素比较,如果目标值小于中间元素,就在左半部分继续查找;反之,在右半部分查找。每次查找都将搜索范围减半,因此效率较高,平均时间...

    java二分查找

    二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素...

    【IT十八掌徐培成】Java基础第03天-05.选择排序-折半查找.zip

    折半查找,又称为二分查找,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是通过将目标值与数组中间元素进行比较,根据比较结果不断缩小查找范围,直到找到目标值或者确定目标值不存在为止。折半查找的...

    java顺序、二分查找方法

    总的来说,掌握顺序查找和二分查找对于Java程序员来说是基础且必要的技能,它们能够帮助你更好地理解和解决实际问题,提高代码的执行效率。在日常工作中,根据具体需求选择合适的查找算法,可以有效地优化程序性能,...

    java-二分查找.rar

    在Java中实现二分查找,我们需要理解其基本原理和步骤,以及如何用代码来表达这些概念。 首先,我们要明白二分查找的前提条件:输入数据必须是有序的。这个有序可以是升序或降序,但通常我们假设为升序。二分查找的...

Global site tag (gtag.js) - Google Analytics