【leetcode】153. Find Minimum in Rotated Sorted Array

技术【leetcode】153. Find Minimum in Rotated Sorted Array 【leetcode】153. Find Minimum in Rotated Sorted A

【leetcode】153 .在旋转排序数组中查找最小值

假设一个长度按升序排列的数组在一和2之间旋转。例如,数组编号=[0,1,2,4,5,6,7]可能会变成:

[4,5,6,7,0,1,2]如果旋转四次。

如果旋转七次,则为[0,1,2,4,5,6,7]。

注意旋转一个数组[a[0],a[1],a[2],a[n-1]]1次导致数组[a[n-1],a[0],a[1],a[2],a[n-2]].

给定已排序的旋转arraynumsofuniqueelements,返回此数组的最小元素。

您必须编写一个运行伊诺(对数n)时间的算法。

解决方案类{

公众号:

int findMin(矢量nums){ 0

//O(logn的时间复杂度感觉是二分法的检索方式)左向右的话最小值就在这里面这样二分检索

//二分检索中间的边界比较麻烦

int n=nums。size();

if(nums[0]=nums[n-1])返回nums[0];

int left=0,right=n-1;

而(左-右-1)

{

int mid=(左/右)/2;

if(nums[左]nums[中])

{

//左=左;

右=中;

}

else if(nums[中]nums[右])

{

左=中;

//右=右

}

else if(nums[左]==nums[中])

{

左=中间1;

}

else if(nums[右]==nums[中])

{

右=中间1;

}

}

返回最小(nums[右],nums[左]);

}

};

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/107454.html

(0)

相关推荐

  • 运维项目记录

    技术运维项目记录 运维项目记录运维项目是一个springboot项目,有简单的前端页面。
    pom文件如下xml version="1.0" encoding="UTF-8"
    project xmlns=

    礼包 2021年10月20日
  • 下载附件

    技术下载附件 下载附件down.js/*** @url 下载地址* @filename 所需要的文件名称*/
    import { getToken } from '@/utils/auth'
    import

    礼包 2021年11月4日
  • 《LeetCode刷题笔记》Day3——删除元素

    技术《LeetCode刷题笔记》Day3——删除元素 《LeetCode刷题笔记》Day3——删除元素给你一个数组 nums和一个值 val,你需要 原地 移除所有数值等于val的元素,并返回移除后数组

    礼包 2021年12月17日
  • 宁冈县,黄河界保卫战发生于江西哪个县

    技术宁冈县,黄河界保卫战发生于江西哪个县宁冈县宁冈县。
    1928年8月,湘赣敌军乘毛泽东带领三十一团一营前往湘南迎还红军大队之机,纠集七个团的兵力会攻井冈山军事根据地。8月30日,吴尚、王均部各两个团进攻黄洋界哨口。红军

    生活 2021年10月29日
  • MySQL 5.7如何使用GTID方式搭建复制环境

    技术MySQL 5.7如何使用GTID方式搭建复制环境这篇文章主要为大家展示了“MySQL 5.7如何使用GTID方式搭建复制环境”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下

    攻略 2021年11月3日
  • 中国结的象征,“中国结”有哪些象征意义

    技术中国结的象征,“中国结”有哪些象征意义目前中国结的基本结法有十多种,其名称是根据绳结的形状、用途、或者原始的出处和意义来命名的。 1.双钱结中国结的象征:形状像两个中国古铜钱半叠的式样,故名。 2.钮扣

    生活 2021年10月28日