Java简单算法-二分查找

java 复制代码
public class Main{
    public static void main(String[] args){
        int[] arr={10,20,30,40,50,60,70};
        int i =20;
        System.out.println(binarySearch(arr,i));
    }
    public static int binarySearch(int[] arr,int number){
        int min =0;
        int max=arr.length-1;
        while(true){
            if(min>max){
                return -1;
            }
            int mid=(min+max)/2;
            if(arr[mid]>number){
                max=mid-1;
            } else if (arr[mid]<number) {
                min = mid+1;
            }else{
                return mid;
            }
        }
    }

}
相关推荐
骇客野人4 分钟前
JAVA获取一个LIST中的最大值
java·linux·list
JIngJaneIL6 分钟前
基于Java失物招领系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·vue
程序员岳焱6 分钟前
Java泛型高级玩法:通配符、上下界与类型擦除避坑实战(纯干货,附完整工具类)
java·后端·程序员
期待のcode6 分钟前
MyBatis-Plus基本CRUD
java·spring boot·后端·mybatis
❀͜͡傀儡师6 分钟前
maven 仓库的Central Portal Namespaces 怎么验证
java·maven·nexus
豐儀麟阁贵7 分钟前
9.3获取字符串信息
java·开发语言·前端·算法
YJlio13 分钟前
第9章小结(9.19):Sysinternals 安全工具组合拳与脚本清单
java·学习·平面
甜鲸鱼17 分钟前
【Spring Boot + OpenAPI 3】开箱即用的 API 文档方案(SpringDoc + Knife4j)
java·spring boot·后端
robch17 分钟前
Java后端优雅的实现分页搜索排序-架构2
java·开发语言·架构
她说..17 分钟前
在定义Java接口参数时,遇到整数类型,到底该用int还是Integer?
java·开发语言·java-ee·springboot