int binarySearch(int[] nums, int target) { int low = 0; int high = nums.length; while (low < high) { int mid = low + ((high - low) >> 1); if (target > nums[mid]) { low = mid + 1; } else { high = mid; } } return low; }
当然需要澄清的一点是,必须注意这个模板找到的是什么数,找到的是:
第一个小于或等于目标数的下标。
转自:https://blog.csdn.net/m0_37302219/article/details/107180126