关闭

java二分查找方法

153人阅读 评论(0) 收藏 举报
分类:
import java.util.Arrays;
public class Erfen
{
    public static void main(String[] args)
    {
        int[] arr={12,18,15,23,11,64,22};
        System.out.println("排序前:"+Arrays.toString(arr));
        Arrays.sort(arr);
        System.out.println("排序后:"+Arrays.toString(arr));
        
        int start=0;
        int end=arr.length-1;
        int middle=0;
        int key=10;
        while(true)
        {
            middle=(start+end)/2;
            if(arr[middle]==key)
            {
                System.out.println("查询的数字存在于"+middle+"下标");
                break;
            }
            else if(arr[middle]>key)
            {
                end=middle-1;
            }
            else if(arr[middle]<key)
            {
                start=middle+1;
            }
            if(start>end)
            {
                System.out.println("该数字不存在!");
                break;
            }
        }
    }
}
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Java版 二分查找

一、算法介绍 折半查找(搜索)、二分查找(搜索)           已经排序的数据(假如是从左向右依次递增),取出中间数与查找值比较      如果中间值大于查找值,应该再次向左侧查找,因为左侧都...
  • love_world_
  • love_world_
  • 2014-01-05 14:09
  • 1595

二分查找(Binary Search) 常见问题解决方法总结

缘由 今天浏览 何登成的技术博客  无意中发现了写的blog,二分查找(Binary Search)需要注意的问题,以及在数据库内核中的实现。 如下: 问题背景 今年的实习生招聘考试,我出了一道...
  • gfsfg8545
  • gfsfg8545
  • 2013-12-13 21:48
  • 8590

JAVA实现二分查找

二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表...
  • lvwei1990
  • lvwei1990
  • 2015-07-20 21:34
  • 1411

二分查找算法(递归与非递归两种方式)

首先说说二分查找法。 二分查找法是对一组有序的数字中进行查找,传递相应的数据,进行比较查找到与原数据相同的数据,查找到了返回1,失败返回对应的数组下标。 采用非递归方式完成二分查找法。java代码如...
  • lovesummerforever
  • lovesummerforever
  • 2014-04-27 15:44
  • 85107

java 实现折半(二分)查找

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

JAVA实现冒泡排序和二分查找

冒泡排序     冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有...
  • dreamsunday
  • dreamsunday
  • 2016-07-21 10:46
  • 6575

Java实现二分查找算法(元素可重复)

public class BinarySearch { public static void main(String[] args) { int[] arrays = new int[]{1,2...
  • wbb_1216
  • wbb_1216
  • 2017-03-01 14:52
  • 1195

JDK中的二分查找算法

二分查找算法是在一个有序(升序)的数据集中以集合里位于中间位置的值为基准来与要查找的值做比较,如此则把集合分为了两部分,一部分是从集合的起始位置到中间位置的前一个位置,所有的值都比中间位置的值小,另外...
  • hugh282003
  • hugh282003
  • 2014-01-11 23:58
  • 1153

算法入门---java语言实现的二分搜索树小结

图片均来自慕课网,仅仅为了学习记录。 1、二叉查找树(Binary Search Tree)      也可叫做二分查找树。它不仅可以查找数据,还可以高效地插入、删除数据。      特...
  • zy00000000001
  • zy00000000001
  • 2017-04-08 12:32
  • 763

java实现顺序查找、二分查找、哈希表查找、二叉排序树查找

java实现顺序查找、二分查找、哈希表查找、二叉排序树查找
  • Rebirth_Love
  • Rebirth_Love
  • 2016-05-04 16:43
  • 1881
    个人资料
    • 访问:19411次
    • 积分:956
    • 等级:
    • 排名:千里之外
    • 原创:86篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条