二分查询

技术二分查询 二分查询二分查询:package com.cc;/** * @Author: cc * @Create: 2021/12/20 * 二分查询实现步骤: * 1.前提:有已排序数组A (假设

二进制查询

二分查询:

package com . cc;

/**

* @Author: cc

* @Create: 2021/12/20

*二分查询实现步骤:

* 1.前提:已经排序了数组A(假设已经排序)

* 2.定义左边界l .右边界R,确定搜索范围,循环执行二分搜索法(3。4步)

* 3.得到中间指标M=Flor((L R)/2)=存在整数超出最大范围的问题,优化为移位运算:M=(L R)1;

* 4.将中间索引的值A[M]与要搜索的值T进行比较。

* A[M]==T表示找到,返回中间索引。

* A[M] T,中间值右边的其他元素都大于T,所以没必要比较。在中间索引左侧查找,设置M- 1为右边界,再查找。

* A[M]T,中间值左侧其他元素均小于T,无需比较。在中间索引的右边找,把M 1设为左边距,再找。

* 5.当没有找到LR时,循环应该结束。

*/

公共类BinarySearch {

公共静态void main(String[]args){ 0

int [] array={1,3,5,6,12,53,65,77,98,123 };

int target=53

int id=binarysearch(数组,目标);

system . out . println(id);

}

public static int binary search(int[]a,int t){ 0

//定义左边距L、右边距R和中间索引m

int l=0,r=a.length - 1,m;

while(l=r){ 0

//计算中间索引(循环内)

m=(l r)1;//Shift操作1相当于除以2。

if(a[m]==t){ 0

返回m;

}否则如果(a[m]t)}

l=m1;

}else {

r=m-1;

}

}

返回-1;

}

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/154986.html

(0)

相关推荐

  • 世界上最大的宫殿,世界上最大的建筑是什么

    技术世界上最大的宫殿,世界上最大的建筑是什么世界上最大的巨石建筑——埃及胡夫金字塔 胡夫金字塔建于埃及第四王朝第二位法老胡夫统治时期(约公元前2670年)世界上最大的宫殿,被认为是胡夫为自己修建的陵墓。在古埃及,每位法老

    生活 2021年11月1日
  • Docker原理、架构与应用是什么

    技术Docker原理、架构与应用是什么本篇内容主要讲解“Docker原理、架构与应用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker原理、架构与应用是什么”吧

    攻略 2021年12月13日
  • 古风古韵的男生名字,求几个好听的古代男生的名字

    技术古风古韵的男生名字,求几个好听的古代男生的名字比如:简玉珩,季舒玄,容云鹤,莫习凛,阮灏君,傅凌天,柯孜墨,楚夫晏,白黎轩,苏兼默古风古韵的男生名字。这些名字富有诗意有非常的好听,关键是一看就是富有诗书底蕴的人家才会

    生活 2021年10月29日
  • Scala简化代码的方法是什么

    技术Scala简化代码的方法是什么本篇内容介绍了“Scala简化代码的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有

    攻略 2021年12月10日
  • SAP CRM WebClient UI交互式报表的工作原理

    技术SAP CRM WebClient UI交互式报表的工作原理这篇文章将为大家详细讲解有关SAP CRM WebClient UI交互式报表的工作原理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文

    攻略 2021年12月3日
  • Java规则引擎有什么优点

    技术Java规则引擎有什么优点本篇内容主要讲解“Java规则引擎有什么优点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java规则引擎有什么优点”吧!一、概述1 规则引擎概

    攻略 2021年11月15日