Findthefirstandlastpositionofanelementinasortedarray题目描述:给定一个升序排列的整数数组nums,以及一个目标值目标。找出给定目标值在数组中的开始和结束位置。如果数组中不存在目标值target,则返回[-1,-1]。进阶:你能设计并实现一个时间复杂度为O(logn)的算法来解决这个问题吗?例子见LeetCode官网。来源:LeetCode链接:https://leetcode-cn.com/probl...版权归LeetCode所有。商业转载请联系官方授权,非商业转载请注明出处。方案一:二分查找,递归用left和right记录起始位置和结束位置,用二分查找的方法在nums中找到target的位置,从0到nums.length-1分别记录为low和high,mid代表中间值,具体过程如下:计算mid为low和high之间的中间值;如果mid的值等于target,则判断mid左边的元素是否等于target,如果相等则递归寻找起始位置,从low到mid-1,如果不相等则左边是中等;判断mid右边的元素是否等于target,如果相等则递归查找结束位置,从mid+1向high查找,如果不相等则right为mid;如果mid的值大于target,high更新为mid-1;如果mid的值小于target,则low更新为mid+1。搜索完成后返回left和right作为最终结果。importjavafx.util.Pair;publicclassLeetCode_034{publicstaticint[]searchRange(int[]nums,inttarget){Pair
