二分法即折半法,用于有序数组中查找数值的同时简化运算。
思路:
(1)首先,从数组的中间元素开始搜索,如果该元素正好是目标元素,则搜索过程结束,否则执行下一步。
(2)如果目标元素大于/小于中间元素,则在数组大于/小于中间元素的那一半区域查找,然后重复步骤(1)的操作。
(3)如果某一步数组为空,则表示找不到目标元素。
例:在100中查找一个整数。
二分法的思路是将该值的范围不断折半直至找到或找不到跳出循环。
若是用普通法依次查找,则最多需查找99次,若范围极大则会超出运行时间限制,而二分法则极大的简化了运算的流程,降低了时间复杂度。