Java二分查找法代码
//主方法
import domain.binartSearchForIndex;public class MyBinarySearchDemo {public static void main(String[] args) {//定义静态整数数组int[] arr = {11,22,33,44,55};//创建要查找的数字int number = 33;//类名.方法名 传入数组和整数参数,并创建变量x接收返回回来的整数int x = binartSearchForIndex.binartSearchForIndex(arr,number);//打印该数字在数组中的位置System.out.println(x);}
}
//二分查找方法体
public class binartSearchForIndex {/*二分查找法*///传入一个数组参数,和要查找的值public static int binartSearchForIndex(int[] arr, int number) {//定义查找范围int min = 0;int max = arr.length - 1;//while判断while (min <= max) {//计算出中间的位置int mid = (min + max) / 2;//mid指向的元素 > numberif (arr[mid] > number) {max = mid - 1;} else if (arr[mid] < number) {//mid指向的元素 < number//表示要查找的元素在右边min = mid + 1;} else {//mid指向的元素 = numberreturn mid;}}//如果min大于了max 就表示元素不存在,返回 -1return -1;}
}
Java二分查找法代码相关推荐
- java二分查找法_java算法之二分查找法的实例详解
java算法之二分查找法的实例详解 原理 假定查找范围为一个有序数组(如升序排列),要从中查找某一元素,如果该元素在此数组中,则返回其索引,否则返回-1.通过数组长度可取出中间位置元素的索引,将其值与 ...
- 学习练习 java 二分查找法
1 package com.hanqi; 2 3 import java.util.*; 4 5 public class Test5 { 6 7 public static void main(St ...
- java二分查找法视频_078-二分查找算法思路图解
2.网上数据结构和算法的课程不少,但存在两个问题: 1)授课方式单一,大多是照着代码念一遍,数据结构和算法本身就比较难理解,对基础好的学员来说,还好一点,对基础不好的学生来说,基本上就是听天书了 2) ...
- java小练习题---冒泡排序+二分查找法
题目: 冒泡排序+二分查找法 代码: package scan; import java.util.Scanner; //import java.util.Scanner; public class ...
- 二分查找法的基本思想与实现代码
二分查找法思想: 二分查找法又称夹逼法,二分查找法使用的基本条件是一个有序的数组,通过从数组头部和尾部折半,判断要查找的数和mid位置数值的大小,来判断要查找的数实在那一半,之后继续折半查找,直至找到 ...
- java 二分查找_计算机入门必备算法——二分查找法
1.引言 笔者对于计算机的研究一直停滞不前,近期想对一些算法进行复习和进一步的研究,每天都会更新一个新的算法,算法有难有易,层层递进.不希望能学的有多么高深,只希望在一些最基本的算法上有编码的思路,或 ...
- java算法2_二分查找法
比如现在有个记录名单的字典,里面的名字是按A-Z的顺序排好的,现在我想找Lily这个人.我可以从第一页开始一页一页的翻,但显然这样效率太低了.我可以怎么做呢?首先我直接翻到字典的中间位置,假如发现这里 ...
- binarysearch java,java数据结构之二分查找法 binarySearch的实例
java数据结构之二分查找法 binarySearch的实例 折半查找法,前提是已经排好序的数组才可查找 实例代码: public class BinarySearch { int[] bArr; p ...
- (java)leetcode852 山脉数组的封顶索引(二分查找法找出数组中最大值的下标)(Peak Index in a Mountain Array)
题目描述: 我们把符合下列属性的数组 A 称作山脉: A.length >= 3 存在 0 < i < A.length - 1 使得A[0] < A[1] < ... ...
- 二分查找法。Java泛型设计二分查找法。
前言基础: 1.只能针对有序的数组进行查找. 2.时间复杂度为O(logn). 3.使用前可以先排序,然后再查找,广泛应用于当一大组数据需要频繁查找,于是我们先将其进行排序,然后再通过二分查找进行查找 ...
最新文章
- Python并发Gevent库(一)
- FineReport报表和FineBI的差别和各自的优势在哪
- SCons命令 之 从入门到精通
- c 语言中浮点数舍入,浮点数在C中舍入,我不明白为什么
- Python获取环境变量值
- 模拟赛 sutoringu
- php 为什么ctrl加 没用,电脑ctrl+c不能用怎么办
- scannet数据集和shapenet、modelnet等数据集的名称和标签对应关系
- 为了运行内存多两G,多花几百块值不值?
- JIRA OutOfMemoryErrors
- Java程序猿修炼之道 之 Logging(3/3) - 怎么分析Log
- 面向对象编程——类和实例(二)
- 软件工程 结对编程 设计结对 单元测试结对 评审结对 是什么
- Linux centosVMware mysql用户管理、常用sql语句、mysql数据库备份恢复
- QVideoWidget遇到的坑。
- 当前企业最流行的三种软件开发模式
- 音视频开发系列(6)视频码率,帧率和分辨率
- 某辆汽车有一个里程表,该里程表可以显示一个整数,为该车走过的公里数。然而这个里程表有个毛病:它总是从3变到5,而跳过数字4,里程表所有位(个位、 十位、百位等)上的数字都是如此
- 华为认证云服务工程师(HCIA-Cloud ServiceV3.0)-- 认证介绍
- R语言 image.binarization: 包_想提高文章的引用率?写个R包吧!- 工具准备篇