给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。
如果数组中不存在目标值 target,返回 [-1, -1]。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
func solute(nums []int, target int) (int){
//思路,直接二分法查找对应的下标,刚好go有searchInsts找下标对应的key
//左边下标
leftMost := sort.SearchInts(nums, target)
//最后,或者不存在则直接返回
if leftMost == len(nums) || nums[leftMost] != target {
return []int{-1,-1}
}
//右加下标,找比左边大1的数字,再返回一位及可
rightMost := sort.SearchInts(nums, target+1) - 1
return []int{leftMost, rightMost}
}