2

假设我有一个类型列表的列表:我可以旋转它(在某种意义上),以便:

[[a,b],    [[b,d],
 [c,d]] =>  [a,c]]

对于任何尺寸列表?或者,如果对于任意大小的列表不可能,仅针对大小为 6x6 的列表

4

2 回答 2

9

以下内容应为您提供所需的输出:

import Data.List (transpose)

rotate :: [[a]] -> [[a]]
rotate = reverse . transpose

测试:

*Main> rotate [[1,2],[3,4]]
[[2,4],[1,3]]
*Main> rotate [[1,2,3],[4,5,6],[7,8,9]]
[[3,6,9],[2,5,8],[1,4,7]]
于 2013-10-28T02:45:04.443 回答
4

就胡歌吧!

[[a]] -> [[a]]

于 2013-10-27T23:55:06.480 回答