当前为游客只读模式。登录后可提交代码判题并保存草稿与进度。

最短无序连续子数组

中等findUnsortedSubarray()
时间限制 2000 ms内存限制 128 MB复杂度要求 时间 O(n),空间 O(1)

最短无序连续子数组

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

请你找出符合题意的最短子数组,并输出它的长度。

约定

  • 如果输入数组已经是升序的,输出 0。

输入

  • nums:整数数组,长度 [1, 10^4]。

输出

最短无序连续子数组的长度。

示例一

输入:

nums = [2, 6, 4, 8, 10, 9, 15]

输出:

5

解释:需要排序的最短子数组是 [6, 4, 8, 10, 9],长度为 5。

示例二

输入:

nums = [1, 2, 3, 4]

输出:

0

示例三

输入:

nums = [1]

输出:

0

复杂度要求

  • 时间 O(n),空间 O(1)。
Loading...

输入

[[2,6,4,8,10,9,15]]

预期输出

5
自定义用例