题解 | #排序#

排序

http://www.nowcoder.com/questionTerminal/2baf799ea0594abd974d37139de27896

* 快排 js*

``` * 将给定数组排序
 * @param arr int整型一维数组 待排序的数组
 * @return int整型一维数组
 */
function MySort( arr ) {
    // write code here
    function quickSort(arr,begin,end){
        if(begin>end) return;
        let tmp = arr[begin];
        let i = begin;
        let j = end;
        while(i != j){
            while(arr[j]>=tmp && j>i){
                j--;
            }
            while(arr[i]<=tmp && j>i){
                i++;
            }
            if(j > i){
                let t=arr[i];
                arr[i]=arr[j];
                arr[j]=t;
            }
        }
        arr[begin]=arr[i]
        arr[i]=tmp
        quickSort(arr,begin,i-1)
        quickSort(arr,i+1,end)
    }
     quickSort(arr,0,arr.length-1)
    return arr
}
module.exports = {
    MySort : MySort
};
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务