partitionArray Function
Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.
partitionArray<T>(array: T[], criterion: (element: T) => boolean): number
@returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
@note The relative ordering of elements within each partition is unspecified. Example:
function isEven(n: number) { return 0 === n % 2; }
const list = [ 1, 2, 3, 4, 5 ];
const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2
// 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.
for (let i = 0; i < list.length; i++)
assert(isEven(list[i]) === i < firstOddIndex);
Returns - number
The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
Defined in
Last Updated: 17 December, 2024