当前位置: 代码迷 >> 综合 >> LeetCode_581. Shortest Unsorted Continuous Subarray
  详细解决方案

LeetCode_581. Shortest Unsorted Continuous Subarray

热度:87   发布时间:2024-01-24 18:20:47.0

题目描述:
在这里插入图片描述
思路:将数组排序,然后采用双指针法从前到后比较排序后数组和元素组对应元素是否相同,不同则找到始末位置。返回长度

class Solution {
public:int findUnsortedSubarray(vector<int>& nums) {vector<int>::iterator itb=nums.begin();vector<int>::iterator ite=nums.end();vector<int> copy(itb,ite);sort(copy.begin(),copy.end());int i=0,j=nums.size()-1;while(i<copy.size()){if(copy[i]!=nums[i])break;i++;}while(j>=0){if(copy[j]!=nums[j])break;j--;}return i<=j?j-i+1:0;}
};
  相关解决方案