class Solution {
public:
void wiggleSort(vector<int>& nums) {
int left=0,right=nums.size()-1;
int n=right/2;
int mid=quicksort(left,right,nums,n);
for(int i=1;i<((right+1)/2);i++){
if(i%2!=0){
swap(nums[i],nums[right-i]);
}
}
}
int swap(int n,int m){
int t;
t=n;
n=m;
m=t;
}
int quicksort(int left,int right,vector<int>& nums,int n){
int i=left,j=right;
int key=nums[left];
while(i<j){
while(i<j&&(nums[j]>key||nums[j]==key)){
j--;
}
if(nums[j]<key){
nums[i]=nums[j];
i++;
}
while(i<j&&(nums[i]<key||nums[i]==key)){
i++;
}
if(nums[i]<key){
nums[j]=nums[i];
j--;
}
}
nums[i]=key;
if(i==n) return nums[i];
else if(i<n) return quicksort(++i,right,nums,n);
else return quicksort(left,--i,nums,n);
}
};
wiggleSort(vector<int>& nums)函式這行報出variable or field `wiggleSort' declared void 錯誤
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/83421.html
標籤:基礎類
上一篇:c語言問題,求高手解答
