给定一个旋转排序数组,在原地恢复其排序。
说明
什么是旋转数组?
- 比如,原始数组为[1,2,3,4], 则其旋转数组可以是[1,2,3,4], [2,3,4,1], [3,4,1,2], [4,1,2,3]
样例
[4, 5, 1, 2, 3]
-> [1, 2, 3, 4, 5]
class Solution {
public:
/*
* @param nums: An integer array
* @return: nothing
*/
void recoverRotatedSortedArray(vector<int> &nums) {
// write your code here
int min=nums[0];
for(int i=0;i<nums.size();i++){
if(min>nums[i]){
min=nums[i];
}
}
for(int i=0;i<nums.size();i++){
if(nums[i]==min){
break;
}else{
int t=nums[i];
nums.erase(nums.begin()+i);
nums.push_back(t);
i--;
}
}
}
};