活动地址:CSDN21天学习挑战赛
一、二分查找原理
1、二分查找的使用条件
(1)记录有序(从大到小或者从小到大)
(2)线性存储
2、二分查找的基本思想
在有序表中,取中间记录作为比较对象,若给定值与中间记录的关键码相等,则查找成 功;若给定值小于中间记录的关键码,则在中间记录的左半区域继续查找;若给定值大于中间记录的关键码,则在中间记录的右半区域继续查找。不断重复上述过程,直到查找成功;若所查找的区域无记录,查找失败。
二、二分查找流程
三、实例
1、题目描述
输入target的值,在给定的数组中查找target,若存在则输出“Find!”和该记录的下标;若不存在则输出“No Find!”
2、代码
3、运行结果
6在数组中存在,a[1]=6;
100在数组中不存在;
四、总结
二分查找的时间复杂度:O(logn);
二分查找的空间复杂度:O(1);
二分查找的效率比顺序查找的效率高。