博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode Shortest Unsorted Continuous Subarray
阅读量:4966 次
发布时间:2019-06-12

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

原题链接在这里:

题目:

Given an integer array, you need to find one continuous subarray that if you only sort this subarray in ascending order, then the whole array will be sorted in ascending order, too.

You need to find the shortest such subarray and output its length.

Example 1:

Input: [2, 6, 4, 8, 10, 9, 15]Output: 5Explanation: You need to sort [6, 4, 8, 10, 9] in ascending order to make the whole array sorted in ascending order.

Note:

  1. Then length of the input array is in range [1, 10,000].
  2. The input array may contain duplicates, so ascending order here means <=.

题解:

index e标记最后没有ascending的位置.

index s标记最初没有decending的位置.

若nums 本来已经sort了,那么s 和 e不会更新.

Time Complexity: O(nums.length). Space: O(1).

AC Java:

1 class Solution { 2     public int findUnsortedSubarray(int[] nums) { 3         if(nums == null || nums.length == 0){ 4             return 0; 5         } 6          7         int s = -1; 8         int e = -2; 9         int len = nums.length;10         int max = nums[0];11         int min = nums[len-1];12         for(int i = 0; i

 

转载于:https://www.cnblogs.com/Dylan-Java-NYC/p/7561072.html

你可能感兴趣的文章
java语法之final
查看>>
python 多进程和多线程的区别
查看>>
sigar
查看>>
iOS7自定义statusbar和navigationbar的若干问题
查看>>
[Locked] Wiggle Sort
查看>>
deque
查看>>
Setting up a Passive FTP Server in Windows Azure VM(ReplyCode: 227, Entering Passive Mode )
查看>>
Python模块调用
查看>>
委托的调用
查看>>
c#中从string数组转换到int数组
查看>>
数据模型(LP32 ILP32 LP64 LLP64 ILP64 )
查看>>
java小技巧
查看>>
POJ 3204 Ikki's Story I - Road Reconstruction
查看>>
【BZOJ】2959: 长跑(lct+缩点)(暂时弃坑)
查看>>
iOS 加载图片选择imageNamed 方法还是 imageWithContentsOfFile?
查看>>
toad for oracle中文显示乱码
查看>>
SQL中Group By的使用
查看>>
错误org/aopalliance/intercept/MethodInterceptor解决方法
查看>>
【设计模式】工厂模式
查看>>
两个表格中数据不用是一一对应关系--来筛选不同数据,或者相同数据
查看>>