剑指offer面试题53 - I. 在排序数组中查找数字 I(二分查找)

题目描述

统计一个数字在排序数组中出现的次数。
在这里插入图片描述

思路

详见链接

代码

class Solution:
	def search(self,nums:[int],target:int)->int:
		i, j = 0, len(nums)-1
		while i <= j:
			m = (i+j)//2
			if nums[m] <= target:
				i = m+1
			else:
				j = m-1
		right = i
		i, j = 0, len(nums)-1
		while i >= j:
			m = (i+j)//2
			if nums[m] < target:
				i = m+1
			else:
				j = m-1
		left = j
		return right - left - 1
发布了202 篇原创文章 · 获赞 575 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_37763870/article/details/105374511