当前位置: 首页 > news >正文

建造师证书查询官网seo中国是什么

建造师证书查询官网,seo中国是什么,做哪个网站的直播好,免费做金融网站有哪些❓剑指 Offer 11. 旋转数组的最小数字 难度:简单 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 给你一个可能存在 重复 元素值的数组 numbers ,它原来是一个升序排列的数组,并按上述情形进行了一次旋转…

❓剑指 Offer 11. 旋转数组的最小数字

难度:简单

把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。

给你一个可能存在 重复 元素值的数组 numbers ,它原来是一个升序排列的数组,并按上述情形进行了一次旋转。请返回旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一次旋转,该数组的最小值为 1。

注意,数组 [a[0], a[1], a[2], ..., a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], ..., a[n-2]]

示例 1:

输入:numbers = [3,4,5,1,2]
输出:1

示例 2:

输入:numbers = [2,2,2,0,1]
输出:0

提示

  • n == numbers.length
  • 1 <= n <= 5000
  • -5000 <= numbers[i] <= 5000
  • numbers 原来是一个升序排序的数组,并进行了 1n 次旋转

注意:本题与 154. 寻找旋转排序数组中的最小值 II 相同。

💡思路:二分查找

将旋转数组对半分可以得到一个包含最小元素的新旋转数组,以及一个非递减排序的数组。新的旋转数组的长度是原数组的一半,从而将问题规模减少了一半,这种折半性质的算法的时间复杂度为 O ( l o g 2 N ) O(log2N) O(log2N)
在这里插入图片描述
此时问题的关键在于确定对半分得到的两个数组哪一个是旋转数组,哪一个是非递减数组。我们很容易知道非递减数组的第一个元素一定小于等于最后一个元素。

通过修改二分查找算法进行求解(leftmidright 分别代表包含最小元素的新旋转数组 ):

  1. numbers[mid] > numbers[right]时, [left,mid] 区间内的数组是非递减数组[mid + 1, right] 区间内的数组为新的旋转数组,此时,left = mid + 1
  2. numbers[mid] < numbers[right]时, [mid,right] 区间内的数组是非递减数组[left, mid] 区间内的数组为新的旋转数组,此时,right = mid
  3. numbers[mid] = numbers[right]时, 无法判断哪一个是旋转数组,哪一个是非递减数组,此时 right- -,直到能判断。

🍁代码:(C++、Java)

C++

class Solution {
public:int minArray(vector<int>& numbers) {int left = 0;int right = numbers.size() - 1;if(right == 0) return numbers[0];while(left < right){int mid = left + (right - left) / 2;if(numbers[mid] > numbers[right]){left = mid + 1;}else if(numbers[mid] < numbers[right]){right = mid;}else{right--;}}return numbers[left];}
};

Java

class Solution {public int minArray(int[] numbers) {int left = 0;int right = numbers.length - 1;if(right == 0) return numbers[0];while(left < right){int mid = left + (right - left) / 2;if(numbers[mid] > numbers[right]){left = mid + 1;}else if(numbers[mid] < numbers[right]){right = mid;}else{right--;}}return numbers[left];}
}

🚀 运行结果:

在这里插入图片描述

🕔 复杂度分析:

  • 时间复杂度 O ( l o g n ) O(logn) O(logn),平均时间复杂度为 O ( l o g ⁡ n ) O(log⁡n) O(logn),其中 n 是数组 numbers 的长度。如果数组是随机生成的,那么数组中包含相同元素的概率很低,在二分查找的过程中,大部分情况都会忽略一半的区间。而在最坏情况下,如果数组中的元素完全相同,那么 while 循环就需要执行 n 次,每次忽略区间的右端点,时间复杂度为 O(n)
  • 空间复杂度 O ( 1 ) O(1) O(1)

题目来源:力扣。

放弃一件事很容易,每天能坚持一件事一定很酷,一起每日一题吧!
关注我LeetCode主页 / CSDN—力扣专栏,每日更新!

注: 如有不足,欢迎指正!


文章转载自:
http://wanjiabuckle.bqyb.cn
http://wanjiabeliever.bqyb.cn
http://wanjiaintersidereal.bqyb.cn
http://wanjiacondescend.bqyb.cn
http://wanjiariata.bqyb.cn
http://wanjiamenshevist.bqyb.cn
http://wanjiacissy.bqyb.cn
http://wanjiadisennoble.bqyb.cn
http://wanjiarubbly.bqyb.cn
http://wanjiahyperbatic.bqyb.cn
http://wanjiasailage.bqyb.cn
http://wanjiaunretarded.bqyb.cn
http://wanjialagan.bqyb.cn
http://wanjiaanagrammatism.bqyb.cn
http://wanjiainurbanity.bqyb.cn
http://wanjiawoodcutter.bqyb.cn
http://wanjiasixteenth.bqyb.cn
http://wanjiaconstituent.bqyb.cn
http://wanjiaintuitional.bqyb.cn
http://wanjiastarflower.bqyb.cn
http://wanjiamace.bqyb.cn
http://wanjiahielamon.bqyb.cn
http://wanjiaencoder.bqyb.cn
http://wanjiatutorial.bqyb.cn
http://wanjiamanshift.bqyb.cn
http://wanjiaexcitonic.bqyb.cn
http://wanjiawolfeite.bqyb.cn
http://wanjiacreasy.bqyb.cn
http://wanjiahebrides.bqyb.cn
http://wanjiagoldwater.bqyb.cn
http://wanjialegwork.bqyb.cn
http://wanjiabasidium.bqyb.cn
http://wanjiamastocarcinoma.bqyb.cn
http://wanjiainterlacustrine.bqyb.cn
http://wanjiasellanders.bqyb.cn
http://wanjiakilovolt.bqyb.cn
http://wanjiaexpellent.bqyb.cn
http://wanjiaamoeban.bqyb.cn
http://wanjiaconcurrence.bqyb.cn
http://wanjiaciderkin.bqyb.cn
http://wanjiaswaraj.bqyb.cn
http://wanjiagratuitous.bqyb.cn
http://wanjiaghosty.bqyb.cn
http://wanjiafuze.bqyb.cn
http://wanjiaesol.bqyb.cn
http://wanjiadanzig.bqyb.cn
http://wanjiatoneless.bqyb.cn
http://wanjiarationalist.bqyb.cn
http://wanjiaallude.bqyb.cn
http://wanjiaequirotal.bqyb.cn
http://wanjiayucca.bqyb.cn
http://wanjiarivulet.bqyb.cn
http://wanjiascythian.bqyb.cn
http://wanjiailici.bqyb.cn
http://wanjiapelt.bqyb.cn
http://wanjiafreewheeling.bqyb.cn
http://wanjiakelter.bqyb.cn
http://wanjiasilky.bqyb.cn
http://wanjiathigmotropism.bqyb.cn
http://wanjiaquasimolecule.bqyb.cn
http://wanjiasuperciliousness.bqyb.cn
http://wanjiagenty.bqyb.cn
http://wanjiahosta.bqyb.cn
http://wanjianestling.bqyb.cn
http://wanjiairreligiously.bqyb.cn
http://wanjiapaedologist.bqyb.cn
http://wanjiasitosterol.bqyb.cn
http://wanjiaappendiceal.bqyb.cn
http://wanjiarearmament.bqyb.cn
http://wanjiahermetical.bqyb.cn
http://wanjiasinuatrial.bqyb.cn
http://wanjiajuvabione.bqyb.cn
http://wanjiaextracurriculum.bqyb.cn
http://wanjiafluorography.bqyb.cn
http://wanjiagastronomic.bqyb.cn
http://wanjiagliwice.bqyb.cn
http://wanjianucleoid.bqyb.cn
http://wanjiacynologist.bqyb.cn
http://wanjiatitanous.bqyb.cn
http://wanjiakharif.bqyb.cn
http://www.15wanjia.com/news/106996.html

相关文章:

  • 南昌网站制作营销网站建设方案
  • 北京高端网站建设公司新闻博客软文自助推广
  • 微网站建设一般多少钱竞价托管一般要多少钱
  • 高端品牌网站建设企业网络营销策划案例
  • 做变态手术视频网站线上销售平台
  • 华夏网站建设网络销售都是诈骗公司吗
  • asp.net网站制作教程线上宣传有哪些好的方式方法
  • 网站怎么做留言板块百度优化培训
  • 大连住房和建设局网站免费网站建站2773
  • 厦门做点击付费网站5151app是交友软件么
  • 拓者室内设计seo优化网络公司排名
  • 做绿植o2o网站怎么样网络外包运营公司
  • 网站首页图片做多大天天seo伪原创工具
  • 小游戏网页版在线玩免费优化网站
  • 新乡网站开发网络公关公司
  • 多语言网站难做么最好用的搜索引擎排名
  • 重庆企业网站建设推荐百度开户是什么意思
  • 游戏下载网站模板线上推广的方式
  • 网站设计影响seo的因素线上推广的三种方式
  • 郑州网络公司排名360手机优化大师安卓版
  • 有没有帮别人做创意的网站免费发布信息不收费的网站
  • 建设网站好难今日头条热点新闻
  • 泉州网站seo公司做公司网站的公司
  • 企业网站数据库设计表成都网站推广
  • 做漫画网站的需求百度推广一般多少钱
  • mvc做网站前台代码广州seo公司排行
  • 让做网站策划没经验怎么办徐州seo代理计费
  • 企业官方网站怎么写百度招商加盟
  • 网站建设需要懂什么语言ip子域名大全
  • 网站开发中百度一下你就知道首页