在Haskell中清除排列组合

Cha*_*ker 2 haskell

在Haskell中以整数列表的形式组成两个排列的简洁方法是什么?

我知道 A !! i是中缀数组访问操作符,就像C++等价物一样A[i],但我对如何映射它感到困惑.在C++中,你会循环我让我C[i] = A[B[i]].

Edw*_*ETT 7

如果您选择将它们存储在包装中Data.VectorData.Vector.Unboxedvector包装中存储,则可以backpermute 直接使用组合器.

那么你想要的只是backpermute a b,你的排列可以存储在盒子里并在内存中打包,减少你的内存占用.