快速排序
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 将给定数组排序
     * @param arr int整型vector 待排序的数组
     * @return int整型vector
     */
    vector<int> MySort(vector<int>& arr) {
        // write code here
        quickSort(arr,0,arr.size()-1);
        
        return arr;
    }
    
    void quickSort(vector<int>& arr,int left, int right){
        
        if(left>=right){
            return;
        }
        
        int temp = arr[left];
        int i = left;
        int j = right;
        
        while(i<j){
            
            while(i<j && arr[j] >= temp){
               j--; 
            }
            
            while(i<j && arr[i] <= temp ){
                i++;
            }
            if(i<j){
                swap(arr,i,j);
            }
           
        }
        
        arr[left] = arr[i];
        arr[i] = temp;
        
        quickSort(arr, left, i-1);
        quickSort(arr, i + 1, right);
        
    }
    
    void swap(vector<int> & arr, int i, int j){
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;   
    }
    
    
};