Я реализую алгоритм point-in-polygon с использованием javascript-лучей в чисто функциональном режиме (без особой причины).
Я застрял, поскольку мне нужно было получить два массива из 2-мерного массива (реплицируя список кортежей); что-то похожее на Haskell unzip
.
Возможно ли, начиная с чего-то вроде [[a,b],[c,d],[e,f]]
получить [[a,c,e],[b,d,f]]
без использования итераторов процедурного стиля?
(Я знаю, что это тривиальный вопрос, и я мог бы просто реализовать функцию процедурно, а затем забыть об этом, но мне было любопытно узнать, есть ли решение)
EDIT: для пояснения я знаю, как реализовать zip
и unzip
: мне было интересно, возможно ли реализовать их без циклов for
и переменных переназначений.