У меня есть функция, которая принимает список целых чисел в качестве аргумента и возвращает список пар в результате. Например, [1;2;3;4]
должно быть возвращено как [(1, 2); (3, 4)]
Я реализовал следующую функцию для этого.
let listToPairList (list: int list) =
let index,pairList = List.foldBack(fun elem (iAcc,listAcc) ->
if (iAcc % 2 = 0) then
(iAcc - 1,(elem,list.[iAcc + 1])::listAcc)
else
(iAcc - 1,listAcc)) list (list.Length - 1, [])
pairList
Теперь я хочу сделать это с помощью функции foldBack
, но без использования индексов. Кто-нибудь может дать мне представление о том, как это сделать?
Любая помощь будет оценена.