当前位置: 首页 > news >正文

二分查找1

初始算法

二分查找

需求:在有序数组 A 内,查找值 target

  • 如果找到返回索引
  • 如果找不到返回 -1

public class BinarySearch {public static int binarySearchBasic(int[] a,int target){int i = 0, j = a.length - 1; //设置指针和初值while (i<=j){  //(i,j)范围内有东西int m = (i+j)>>>1;//java中最高位是符号位//右移一位,最高位补零,结果就相当于除以2了if (target < a[m]){  //目标在左边j=m-1;}else if (a[m] < target){  //目标在右边i=m+1;}else {  //找到了return m;}}return -1;}
}
//改动版
public class BinarySearch {public static int binarySearchBasic(int[] a,int target){int i = 0, j = a.length;while (i<j){int m = (i+j)>>>1;if (target < a[m]){  j=m;}else if (a[m] < target){  i=m+1;}else {  return m;}}return -1;}
}

数组

http://www.dtcms.com/a/274492.html

相关文章:

  • c++STL-优先队列priority_queue和仿函数
  • 2025年十五届APMCM亚太B题第二版本详细思路分析+问题1可视化
  • Android13 研究可以静态注册的广播
  • 基于vscode开发工具显示git提交信息的插件
  • 物联网应用开发技术趋势与实践指南
  • 高德智能手表解决方案 助力荣耀手表5 Ultra开启智慧出行
  • 基于Java Spring Boot开发的旅游景区智能管理系统 计算机毕业设计源码32487
  • 多云环境下的成本管理挑战与对策
  • Vue集成MarkDown
  • 数据结构:栈、队列、链表
  • 磁场的秘密触手可及:霍尔传感器与嵌入式仿真平台赋能高校创新教学
  • HandyJSON使用详情
  • VS Code 插件扩展开发指南
  • AI的欧几里得要素时刻:从语言模型到可计算思维
  • 玖玖NFT数字藏品源码(源码下载)
  • 【达梦数据库|JPA】后端数据库国产化迁移记录
  • 解读:大模型(LLM)、检索增强生成(RAG)、智能体(Agent)
  • 城市之间消防主机长距离使用can转以太网通讯方案
  • JDBC 批处理操作详解
  • leetcode105深度解析:从前序与中序遍历序列构造二叉树
  • 我找工作的时候,AI到底帮了我还是坑了我?
  • 益丰新材闯上市:营收连降,核心原料依赖关联方,马韵升家族控股
  • 【每日刷题】x 的平方根
  • [TOOL] ubuntu 使用 ffmpeg 操作 gif、mp4
  • UNet改进(21):门控注意力机制在UNet中的应用与优化
  • mongodb 开源同步工具介绍
  • c++11——左值、右值、完美转发、移动语义
  • 【AI News | 20250710】每日AI进展
  • 60 美元玩转 Li-Fi —— 开源 OpenVLC 平台入门(附 BeagleBone Black 驱动简单解析)
  • UE5中的cesium