二分搜索分为三种,搜索一个数找不到就返回-1的,搜索左边界的,搜索右边界的。 先看循环条件: 搜索一个数的话,left <= right 搜索边界的话,left < right 核心情况在于nums[mid] == target 搜索一个数的话,返回mid 搜索左边界,right = mid 搜