这题用二分法查找该数字第一次出现和最后一次出现的位置,但是我用循环发现怎么写都不行_(:з」∠)_还是老老实实按照别人的方法用递归去写,这里方法的重点在于当mid所在的元素和k相等了如何处理。分为两种情况,1 当查找第一个出现的位置时,需要判断它是否是第一个元素,或者它前一个元素是否不是k,如果是就直接输出mid,否则end=mid-1 。2 当查找最后一次出现的位置时,需要判断它是否是数组最后一个元素,或者是否后一个元素不是k,如果是就直接输出mid,否则start=mid+1
剑指-数字在排序数组中出现的次数
最新推荐文章于 2021-01-24 19:52:53 发布