【每日算法】二分查找法II

Java82
left,right=1,n
while left<=right: mid="left+(right-left)//2" if 条件: right="mid+1" else: left="mid-1" < code></=right:>
&#x6574;&#x6570;&#x6570;&#x7EC4; nums &#x6309;&#x5347;&#x5E8F;&#x6392;&#x5217;&#xFF0C;&#x6570;&#x7EC4;&#x4E2D;&#x7684;&#x503C; &#x4E92;&#x4E0D;&#x76F8;&#x540C; &#x3002;

&#x5728;&#x4F20;&#x9012;&#x7ED9;&#x51FD;&#x6570;&#x4E4B;&#x524D;&#xFF0C;nums &#x5728;&#x9884;&#x5148;&#x672A;&#x77E5;&#x7684;&#x67D0;&#x4E2A;&#x4E0B;&#x6807; k&#xFF08;0 <= 0 3 k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], nums[k-1]](下标 从 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 处经旋转后可能变为 [4,5,6,7,0,1,2] 。 给你 旋转后 的数组 nums 和一个整数 target ,如果 中存在这个目标值 ,则返回它的下标,否则返回 -1 。 code></=>
&#x8F93;&#x5165;&#xFF1A;nums = [4,5,6,7,0,1,2], target = 0
&#x8F93;&#x51FA;&#xFF1A;4
&#x8F93;&#x5165;&#xFF1A;nums = [4,5,6,7,0,1,2], target = 3
&#x8F93;&#x51FA;&#xFF1A;-1
输入验证码查看隐藏内容

扫描二维码关注本站微信公众号 Johngo学长
或者在微信里搜索 Johngo学长
回复 svip 获取验证码
wechat Johngo学长