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

Java手写二分查找

两个注意点

  • 有序的数组才能进行二分查找,需要先排序下。
  • mid的下标计算是slow+(fast-slow)/2,(fast-slow)/2仅表示距离,考虑实际索引还要加上slow。
public static void main(String[] args) {int[] ints = new int[]{1,4,2,6,8,3};int target = 4;Arrays.sort(ints);int i = binarySearch(ints, target);System.out.println(i);
}public static int binarySearch(int[] ints, int target){int slow = 0;int fast = ints.length - 1;while (slow <= fast){int mid = slow + (fast - slow)/2;//注意下标计算if (ints[mid] > target){fast = mid - 1;}else if (ints[mid] < target){slow = mid + 1;}else {return mid;}}return -1;
}

以上为个人学习分享,如有问题,欢迎指出:)


http://www.mrgr.cn/news/67514.html

相关文章:

  • 部署一个属于自己的文件服务器(File Browser )
  • 使用亚马逊 S3 连接器为 PyTorch 和 MinIO 创建地图式数据集
  • Halcon 算法加速的基础知识(多核并行/GPU)
  • 多任务学习在转转主搜精排的应用
  • 深圳新世联:氢能中的气体传感器应用
  • 可视化建模与UML《顺序图实验报告》
  • 【青牛科技】D1084 5A低压差电压调整器应用方案
  • 浅谈Spring MVC
  • 6.qsqlquerymodel源码分析
  • Python实现SSA智能麻雀搜索算法优化BP神经网络分类模型(优化权重和阈值)项目实战
  • Python 语言有什么奇技淫巧吗?
  • 删除MacOS下PowerPoint烦人的加载项
  • 城镇保障性住房管理:SpringBoot技术应用
  • 少儿编程启蒙学习
  • zabbix安装基础配置
  • MATLAB和R及Python病例对照分析
  • A018基于Spring Boot的民宿租赁系统
  • 二叉树的基本操作
  • 路见不平 ! 基于tensorlfow快速迭代的户型图分类功能
  • openreview中的加粗、斜体、下划线