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

发布网站的流程郑州网站建设公司哪家好

发布网站的流程,郑州网站建设公司哪家好,手机网站设计手机壳尺寸一览表,中国500强排行榜目录 1.题目描述 2.题解 分析 具体实现 方法一(遍历): 方法二(排序): 方法三(二分查找): 1.题目描述 有一个长度为 n 的非降序数组,比如[1,2,3,4,5]&a…

目录

1.题目描述

2.题解

分析

具体实现

方法一(遍历):

方法二(排序):

方法三(二分查找):


1.题目描述

有一个长度为 n 的非降序数组,比如[1,2,3,4,5],将它进行旋转,即把一个数组最开始的若干个元素搬到数组的末尾,变成一个旋转数组,比如变成了[3,4,5,1,2],或者[4,5,1,2,3]这样的。请问,给定这样一个旋转数组,求数组中的最小值。

示例

输入:[3, 4, 5, 1, 2]

返回值:1

2.题解

分析

题目中的数组为

 题目要求我们找出其中的最小值

具体实现

方法一(遍历):

寻找数组中的最小值,遍历数组即可找到最小值

public class Solution {public int minNumberInRotateArray(int[] nums) {if(nums.length == 0){return -1;}int min = nums[0];for (int i = 1; i < nums.length; i++) {if (min > nums[i]) {min = nums[i];}}return min;}
}

 

方法二(排序):

使用Arrays.sort方法对数组进行降序排序,则nums[0]即为数组的最小值

import java.util.Arrays;public class Solution {public int minNumberInRotateArray (int[] nums) {if(nums.length == 0){return -1;}Arrays.sort(nums);return nums[0];}
}

方法三(二分查找):

数组原本是一个升序数组,旋转之后,数组被分成两部分,前、后半部分分别为升序,后半部分小于前半部分,我们可以利用二分查找的思想,找到其旋转点,即可找到数组的最小值

首先找到数组首尾两端元素,并求出数组中间的下标

再将数组中间值与数组首尾两端元素进行比较,

nums[mid] > nums[right],则left = mid + 1

 

 若nums[mid] < nums[right],则right = mid

nums[mid] = nums[right], 则将right向左移动一位,即right--

 然后进入下一次循环,循环的条件为left < right

通过不断缩小范围,最终能够找到数组的最小值

完整代码

public class Solution {public int minNumberInRotateArray(int[] nums) {if(nums.length == 0){return -1;}int left = 0;int right = nums.length - 1;while(left < right){//找到数组的中点int mid = (left + right) / 2;if(nums[mid] > nums[right]){//旋转点在[mid+1, j]中,跳过mid+1左边元素left = mid + 1;} else if(nums[mid] < nums[right]){//旋转点在[left, mid]中,跳过mid右边元素right = mid;}else{//缩小right继续查找right--;}}//返回旋转点return nums[left];}
}

 :题目出自牛客网,链接如下

旋转数组的最小数字_牛客题霸_牛客网 (nowcoder.com)

http://www.dt0577.cn/news/25054.html

相关文章:

  • 提升学历被骗怎么投诉优化大师电脑版
  • 珠宝网站模板seo搜索引擎优化是什么意思
  • 网站开发运营抖音代运营大概多少钱一个月
  • 互联网定制产品网站百度在线咨询
  • 旅游网站开发的流程东莞优化疫情防控措施
  • 手机网站设计报价外贸seo网站推广
  • 免费的个人网站百度快照官网
  • 网站简繁体转换js设计网站大全
  • 罗湖网站建设费用小程序推广50个方法
  • 网站tag设计图片外链在线生成
  • 百搜网络科技有限公司外贸谷歌seo
  • 网站法人与负责人seo搜索优化邵阳
  • 响应式网站 图片处理seo网上培训多少钱
  • ps网站导航制作微信附近人推广引流
  • 涉县企业做网站推广公众号怎么开通
  • php和python做网站郑州官网关键词优化公司
  • 公司网站维护都需要怎么做免费的行情软件app网站
  • 网站后台栏目根据什么做的seo怎么优化
  • 专业建站公司费用现在阳性最新情况
  • 腾讯做的导购网站免费网站建设seo
  • 苹果软件做ppt模板下载网站韩国seocaso
  • 网站建设工具关键词优化如何做
  • wordpress 电商网站so导航 抖音
  • 怎么使用网站上的模板收录提交入口网址
  • php完整网站开发源码福建百度推广开户
  • 漳州市网站建设公司网站注册要多少钱
  • 如何在网站做旅游产品关键词优化快速
  • 手机网站模板.常见的网络推广方式包括
  • 网站开发设计心得微博关键词排名优化
  • 福田网站建设营销策划方案