N Записей, взятых R за один раз Алгоритм - PullRequest
0 голосов
/ 20 октября 2010

Если я знаю, что у меня есть n записей, и я хочу сделать что-то для группы из r записей за раз (в основном делать вещи для n в пакетах, потому что n действительно велико), каков алгоритм для этого? Любой язык в порядке (хотя я использую PHP).

Алгоритм должен учитывать, что на последней итерации может не хватить записей для создания полной группы r.

Recall: to find the total number of r combinations from a set of n records, 
use the combination formula:

C(n,r) = n! / r!(n-r)!

- Правка - В случае, если другие заинтересованы: у меня есть CSV (строка) около 10K строк. Я искал наиболее эффективный способ обработки каждой строки CSV кусками X.

Например, мне нужно отправить данные из CSV третьему лицу через API. API позволяет отправлять только X записей одновременно (вот почему мне нужен фрагмент).

1 Ответ

2 голосов
/ 20 октября 2010

использование array_chunk().

$chunks = array_chunk($arr, $r);
foreach($chunks as $chunk)
{
   deal_with($chunk);
}
...