首页 > 社交 > 科普中国

「Leetcode刷题」「33」搜索旋转排序数组.py

常驻编辑 科普中国 2022-06-13 数组   目标值   下界   疫情   篇幅   年薪   注释   平时   内容   文章
# leetcode submit region begin(Prohibit modification and deletion)
from typing import *
class Solution:
    def search(self, nums: List[int], target: int) -> int:

        left, right = 0, len(nums)-1
        while left <= right:
            mid = left + (right-left) // 2
            if nums[mid] == target:
                return mid
            """
            我们把数组二分后,要么左边有序,要么右边有序
            因为只有有序,才能二分,
            所以我们得根据有序的那个部分
            确定我们该如何改变二分查找的上下界
            """
            # 如果旋转数组在左半部分有序
            if nums[left] <= nums[mid]:
                # 并且目标值在左半部分里
                if nums[left]<=target

-----------------------------------------------nNR拜客生活常识网

如果是第一次阅读文章,可以看看下面的话。nNR拜客生活常识网

以上内容由平时积累而成,尽量保证代码与注释合在一起,并未做过多篇幅的解释。不一定是最优解,但一定是自己能看得懂的。有疑问的地方请留言评论,我在评论中给详细解答。如果题干是原题,就没有写在文章中。后续内容会慢慢发出nNR拜客生活常识网

欢迎大家评论,收藏和转发。nNR拜客生活常识网

感谢大家的点赞和关注。nNR拜客生活常识网

先赞后看,年薪百万nNR拜客生活常识网

红帽帽,白签签,一起排队做酸酸。愿疫情早日过去。nNR拜客生活常识网

相关阅读:

  • 如何输入数组(如何将数字输入数组)
  • 指针怎么用 c语言指针与一维数组?
  • java
  • 集合篇
  • GO学习
  • 技巧篇:常用的vba代码汇总
  • JavaScript中的数据类型判断
  • C++的四类循环:Entry
  • 「java8」阿里架构师:Stream对集合的处理方式你全都知
  • 公式实现多行多列跳过空白引用到一列
    • 网站地图 |
    • 声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。