TypeScript版快速排序

来源:互联网 发布:房卡麻将源码搭建教程 编辑:程序博客网 时间:2024/05/16 15:50

废话不多说,直接上代码,我是用VSCode写的。


 sort(arr: number[], begin: number, end: number): Array<number> {        if (end <= begin)            return arr;        let i = begin;        let j = end;        let key = arr[begin];        while (true) {            while (true) {                if (i == j) break;                if (arr[j] < key) {                    let temp = arr[j];                    arr[j] = arr[i];                    arr[i] = temp;                    break;                }                j--;            }            while (true) {                if (i == j) break;                if (arr[i] > key) {                    let temp = arr[i];                    arr[i] = arr[j];                    arr[j] = temp;                    break;                }                i++;            }            if (i == j)                break;        }        if (end - j > 1) {            arr = this.sort(arr, j + 1, end);        }        if (i - begin > 1) {            arr = this.sort(arr, begin, i);        }        return arr;    }


原创粉丝点击