LeetCode--581. Shortest Unsorted Continuous Subarray(最短的无序数组长度)Python
2018-01-15 17:00
951 查看
题目:
给定一串数组,找出其中的一个连续子串,将该子串按升序排序后,整个数组都是升序。返回该子串的长度。
解题思路:
先将该数组排序,然后统计该数组排序后和原数组内容相同的首尾部分长度,用数组总长度减去该长度即可。
代码(Python):
class Solution(object):
def findUnsortedSubarray(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
nums_c = [i for i in nums]
nums.sort()
min_0 = 0
max_0 = 0
flag = 0
for i in range(len(nums)):
if nums[i]==nums_c[i]:
continue
else:
flag = 1
min_0 = i
break
if flag==0:
return 0
for i in range(len(nums)):
if nums[-i-1]==nums_c[-i-1]:
continue
else:
max_0 = -i
break
return len(nums)+max_0-min_0
给定一串数组,找出其中的一个连续子串,将该子串按升序排序后,整个数组都是升序。返回该子串的长度。
解题思路:
先将该数组排序,然后统计该数组排序后和原数组内容相同的首尾部分长度,用数组总长度减去该长度即可。
代码(Python):
class Solution(object):
def findUnsortedSubarray(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
nums_c = [i for i in nums]
nums.sort()
min_0 = 0
max_0 = 0
flag = 0
for i in range(len(nums)):
if nums[i]==nums_c[i]:
continue
else:
flag = 1
min_0 = i
break
if flag==0:
return 0
for i in range(len(nums)):
if nums[-i-1]==nums_c[-i-1]:
continue
else:
max_0 = -i
break
return len(nums)+max_0-min_0
相关文章推荐
- LeetCode 581. Shortest Unsorted Continuous Subarray (最短无序连续子数组)
- LeetCode-581. Shortest Unsorted Continuous Subarray (JAVA)最短未排序数组
- Leetcode#581. Shortest Unsorted Continuous Subarray(最短未排连续子数组)
- Shortest Unsorted Continuous Subarray最短无序连续子数组
- leetcode 581. Shortest Unsorted Continuous Subarray 最短乱序子数组
- [LeetCode] Shortest Unsorted Continuous Subarray 最短无序连续子数组
- LeetCode-581:Shortest Unsorted Continuous Subarray (最短未排序连续子数组) -- easy
- leetcode 581. Shortest Unsorted Continuous Subarray python
- [LeetCode] 无序数组中的最长连续数列 The Longest Consecutive Sequence in an unsorted array
- [Leetcode,python] Find All Numbers Disappeared in an Array 寻找数组中消失的数字
- 需要排序的最短子数组的长度
- 需要排序的最短子数组长度
- 【LeetCode】最短子数组之和(Minimum size subarray sum)
- LeetCode-two sum:python解答数组问题
- [LeetCode] Encode String with Shortest Length 最短长度编码字符串
- leetcode -- (1)按照指定长度保留数组数据
- 两个无序数组分别叫A和B,长度分别是m和n,求中位数,要求时间复杂度O(m+n),空间复杂度O(1) 。
- LeetCode--238. Product of Array Except Self(数组除自身以外的乘积)Python
- [Leetcode,python] Find All Numbers Disappeared in an Array 寻找数组中消失的数字
- 需要排序的最短子数组长度