Поделиться через


Секционированная функция

Полное имя: Std.Arrays.Partitioned

function Partitioned<'T>(partitionSizes : Int[], array : 'T[]) : 'T[][]

Сводка

Разбивает массив на несколько частей.

Ввод

partitionSizes

Количество элементов в каждой разделенной части массива.

массив

Входной массив для разделения.

Выпуск

Несколько массивов, где первый массив является первым partitionSizes[0]array, а второй — следующим partitionSizes[1]array и т. д. Последний массив будет содержать все оставшиеся элементы. Если массив разделен точно, последний массив будет пустым массивом, что указывает на отсутствие оставшихся элементов. Другими словами, Tail(Partitioned(...)) всегда возвращают остальные элементы, а Most(Partitioned(...)) всегда возвращают полные секции массива.

Пример

// The following returns [[2, 3], [5], [7]];
let split = Partitioned([2, 1], [2, 3, 5, 7]);
// The following returns [[2, 3], [5, 7], []];
let split = Partitioned([2, 2], [2, 3, 5, 7]);