目录
题目
解法一、二分查找(闭区间)
解法二、二分查找(半开半闭区间)
题目
解法一、二分查找(闭区间)
int search(int *nums, int numsSize, int target) { int left = 0; int right = numsSize - 1; int mid; while (left <= right) { mid = left + ((right - left) >> 1); if (nums[mid] == target) return mid; else if (nums[mid] < target) left = mid + 1; else right = mid - 1; } return -1; }解法二、二分查找(半开半闭区间)
int search(int *nums, int numsSize, int target) { int left = 0; int right = numsSize; int mid; while (left < right) { mid = left + ((right - left) >> 1); if (nums[mid] == target) return mid; else if (nums[mid] < target) left = mid + 1; else right = mid; } return -1; }