博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 581. 最短无序连续子数组(Shortest Unsorted Continuous Subarray)
阅读量:5317 次
发布时间:2019-06-14

本文共 828 字,大约阅读时间需要 2 分钟。

581. 最短无序连续子数组

581. Shortest Unsorted Continuous Subarray

题目描述

给定一个整型数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。

你找到的子数组应是最短的,请输出它的长度。

LeetCode581. Shortest Unsorted Continuous Subarray

示例 1:

输入: [2, 6, 4, 8, 10, 9, 15]
输出: 5
解释: 你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个数组都会变为升序排序。

说明:

  1. 输入的数组长度范围在 [1, 10,000]。
  2. 输入的数组可能包含重复元素,所以升序的意思是 <=。

Java 实现

import java.util.Arrays;class Solution {    public int findUnsortedSubarray(int[] nums) {        int n = nums.length;        int[] temp = nums.clone();        Arrays.sort(temp);        int start = 0;        while (start < n && nums[start] == temp[start]) {            start++;        }        int end = n - 1;        while (end > start && nums[end] == temp[end]) {            end--;        }        return end - start + 1;    }}

参考资料

转载于:https://www.cnblogs.com/hglibin/p/10899592.html

你可能感兴趣的文章
freebsd 实现 tab 命令 补全 命令 提示
查看>>
struts1和struts2的区别
查看>>
函数之匿名函数
查看>>
shell习题第16题:查用户
查看>>
实验4 [bx]和loop的使用
查看>>
Redis常用命令
查看>>
2018.11.06 bzoj1040: [ZJOI2008]骑士(树形dp)
查看>>
2019.02.15 bzoj5210: 最大连通子块和(链分治+ddp)
查看>>
redis cluster 集群资料
查看>>
微软职位内部推荐-Sr. SE - Office incubation
查看>>
微软职位内部推荐-SOFTWARE ENGINEER II
查看>>
centos系统python2.7更新到3.5
查看>>
【Quartz】常用方法的使用方式(三)
查看>>
MVVM模式下关闭窗口的实现
查看>>
C#区域截图——调用API截图
查看>>
c#与java中byte字节的区别及转换方法
查看>>
A WebBrowser Toy
查看>>
用MyXls生成Excel报表(C#)
查看>>
了解WP的传感器
查看>>
阅读笔记 火球——UML大战需求分析 2
查看>>