算法第二十五天-寻找排序数组中的最小值

寻找排序数组中的最小值

题目要求

解题思路

二分法

代码

class Solution:
    def findMin(self, nums: List[int]) -> int:
        low, high = 0, len(nums) - 1
        while low < high:
            pivot = low + (high - low) // 2
            if nums[pivot] < nums[high]:
                high = pivot 
            else:
                low = pivot + 1
        return nums[low] 

复杂度分析

时间复杂度: O ( l o g N ) O(log N) O(logN),在二分查找的过程中,每一步会忽略一般的区间,因此时间复杂度为 O ( l o g N ) O(log N) O(logN)
空间复杂度: O ( 1 ) O(1) O(1)

最近更新

  1. TCP协议是安全的吗?

    2024-03-10 13:22:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-10 13:22:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-10 13:22:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-10 13:22:01       20 阅读

热门阅读

  1. 了解MVCC的实现吗 ?(隐式字段,ReadView,undo log)

    2024-03-10 13:22:01       20 阅读
  2. Windows系统Starting the Docker Engine 一直转圈解决方法

    2024-03-10 13:22:01       36 阅读
  3. Android 开发过程中常见的内存泄漏场景分析

    2024-03-10 13:22:01       20 阅读
  4. 微信小程序 - 组件wxml中slot

    2024-03-10 13:22:01       21 阅读
  5. 新概念英语第二册(74)

    2024-03-10 13:22:01       19 阅读
  6. Node.js 简介以及安装

    2024-03-10 13:22:01       23 阅读
  7. Matlab

    Matlab

    2024-03-10 13:22:01      20 阅读
  8. go - 学习笔记 -2

    2024-03-10 13:22:01       19 阅读
  9. excel数据导入到数据库的方法

    2024-03-10 13:22:01       21 阅读
  10. 鼎盛合|无线麦克风音频方案

    2024-03-10 13:22:01       19 阅读
  11. C语言:苹果和虫子

    2024-03-10 13:22:01       18 阅读