Java教程

二分查找

本文主要是介绍二分查找,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

概述 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,二分查找要求数组数据必须采用顺序存储结构有序排列。

原理

首先,假设数组中元素是按升序排列,将数组中间位置的数据与查找数据比较,如果两者相等则查找成功;否则利用中间位置记录将数组分成前、后两个子数组,如果中间位置数据大于查找数据,则进一步查找前子数组,否则进一步查找后子数组。 重复以上过程,直到找到满足条件的数据,则表示查找成功, 直到子数组不存在为止,表示查找不成功

查找方法:

1.确定查找的范围 最小—最大

2.计算中间的下标 (最小+最大)/2

3.比较中间下标数据,中间数据较大,则最大下标等于中间下标-1

比较中间下标数据,中间数据较小,则最小下标等于中间下标+1

4.当最小下标大于最大下标时,查找失败,数据是不存在的

 

 

这篇关于二分查找的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!