Function partitionSelect
Partition-based selection of an array or 1D matrix.
Will find the kth smallest value, and mutates the input array.
Uses Quickselect.
Syntax
partitionSelect(x, k)
partitionSelect(x, k, compare)
Parameters
Parameter |
Type |
Description |
x |
Matrix | Array |
A one dimensional matrix or array to sort |
k |
Number |
The kth smallest value to be retrieved; zero-based index |
compare |
Function | 'asc' | 'desc' |
An optional comparator function. The function is called as compare(a, b) , and must return 1 when a > b, -1 when a < b, and 0 when a == b. Default value: 'asc'. |
Returns
Type |
Description |
* |
Returns the kth lowest value. |
Examples
partitionSelect([5, 10, 1], 2); // returns 10
partitionSelect(['C', 'B', 'A', 'D'], 1); // returns 'B'
function sortByLength (a, b) {
return a.length - b.length;
}
partitionSelect(['Langdon', 'Tom', 'Sara'], 2, sortByLength); // returns 'Langdon'
See also
sort