随手写个二分查找算法【Java】
夫陶公
清风
千古,余又何人,敢称庶几
个人博客地址:http://www.breez.work
介绍
代码
public class Dichotomy {public static void search(int[] array, int target, int start, int end) {int mid = (start + end) / 2;if (start <= end) {if (array[mid] == target) {System.out.println("找到了:" + array[mid]);} else if (target > array[mid]) {search(array, target, mid + 1, end);} else {search(array, target, start, mid - 1);}} else {System.err.println("没有找到:" + target);}}public static void main(String[] args) {int[] array = {23, 69, 78, 96, 123, 178, 963, 989};System.out.println("----------------测试用例-------------------");//测试用例Dichotomy.search(array, -1, 0, array.length - 1);Dichotomy.search(array, 23, 0, array.length - 1);Dichotomy.search(array, 96, 0, array.length - 1);Dichotomy.search(array, 989, 0, array.length - 1);Dichotomy.search(array, 9890, 0, array.length - 1);Dichotomy.search(array, 96, 2, array.length - 1);}
}
测试
随手写个二分查找算法【Java】相关推荐
- 二分查找算法java
二分查找又称折半查找,它是一种效率较高的查找方法. 折半查找的算法思想是将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元 ...
- java 二分查找_JAVA 实现二分查找算法。我知道你会,但没你想象的那么简单
二分查找算法定义:二分查找(binary search),也称折半搜索,是一种在 有序数组 中 查找某一特定元素 的搜索算法.搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结 ...
- Java 二分查找算法及效率比较
1.前提:二分查找的前提是需要查找的数组必须是已排序的,我们这里的实现默认为升序 2.原理:将数组分为三部分,依次是中值(所谓的中值就是数组中间位置的那个值)前,中值,中值后:将要查找的值和数组的中值 ...
- list 查找_五千字长文带你学习 二分查找算法
点击上方"与你一起学算法",选择"星标"公众号 重磅干货,第一时间送达 二分查找的思想 提及二分查找算法,我想大部分人都不陌生,就算不是学计算机的,基本上也都使 ...
- 查找算法--Java实例/原理
原文网址:查找算法--Java实例/原理_IT利刃出鞘的博客-CSDN博客 简介 本文用Java实例介绍查找算法及其原理. 本内容也是Java后端面试常见的问题. 查找定义 查找定义:根据给定的某个值 ...
- 关于《算法(第四版 谢路云译)》标准库In、Out、StdOut和StdIn的正确配置和调用经验分享(以BinarySearch二分查找算法为例)
本人初学<算法(第四版 谢路云译)>有一段时间了,对于初学者按书敲完第一个BinarySearch二分查找算法发现运行错误,我相信大家跟我一样内心是崩溃的.还好经过翻看多个相关论坛以及自己 ...
- 二分查找算法的万能公式(LeetCode35、704、1095)
二分查找常常用于有序数组的查找操作.当然如果是一个问题,数组的顺序满足特定条件(不仅仅是升序或者降序,也可以是先升后降或先降后升),就可以通过逐步排查,缩小问题的规模的方式找到,这种算法也是二分查找算 ...
- 二分查找算法介绍及实现
一.基本概念 二分查找法(Binary Search)算法,也叫折半查找算法.二分查找针对的是一个有序的数据集合,查找思想有点类似于分治思想.每次都通过跟区间的中间元素对比,将带查找的区间缩小为之前的 ...
- 二分查找算法的两种实现方式:非递归实现和递归实现
二分查找的条件是对一组有序数组的查找,这一点很容易忘记,在使用二分查找的时候先要对数组进行排序. 先说一下二分查找的思路:一个有序数组,想要查找一个数字key的下标,首先算出中间下标mid,利用mid ...
最新文章
- CondLaneNet:基于条件卷积的自顶向下车道检测框架
- Jsprime——一款JavaScript静态安全分析工具
- EdgeGallery — MECM — 系统架构
- 《SQL Server企业级平台管理实践》读书笔记——几个系统库的备份与恢复
- Javascript获取url参数值
- 刷题总结——烽火传递(单调队列+dp)
- 【转】对服务采购订单的条目确认
- 计算机网络总结:第三章 运输层
- 企业私有云部署im,视频服务
- 玩转oracle 11g(27):ora-12154和客户端版本低
- 转换流指定编码读写文件
- 英特尔AI如何帮助修缮残垣断壁的长城,背后的奥秘找到了
- CNN卷积神经网络总结
- Excel排序、筛选
- 保护电路:简单的限流保护电路图
- vue-nuxt-ssr 做谷歌,百度统计以及google,facebook埋点总结
- 心理测试html5,50个最准心理测试题 非常准的心理测试题
- 鹿狩猎 - 认识到许多因素要记住
- 结对编程——自动生成数学试卷的系统(javaswing,mysql)by 陈松刘宇航
- 用Python实现数据筛选与匹配