1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| /**
| * Quick select n-th element in an array.
| *
| * Note: it will change the elements placement in array.
| */
| declare type CompareFunc<T> = (a: T, b: T) => number;
| /**
| * @example
| * let arr = [5, 2, 1, 4, 3]
| * quickSelect(arr, 3);
| * quickSelect(arr, 0, 3, 1, function (a, b) {return a - b});
| *
| * @return {number}
| */
| declare function quickSelect<T>(arr: T[], nth: number, compareFunc: CompareFunc<T>): number;
| declare function quickSelect<T>(arr: T[], nth: number, left: number, right: number, compareFunc: CompareFunc<T>): number;
| export default quickSelect;
|
|