Haskell:列出一个列表并将它们分解为几个单独的列表(不连接)

kxk*_*kxk 2 haskell list

这是一个我知道的基本问题,我是Haskell的初学者.所以,我想知道如何从以下函数中"获取"列表:

putStr( f [[1,2,3],[4,5,6],[6,7,8]])
Run Code Online (Sandbox Code Playgroud)

我不知道我是否正确表达了这一点,但我想创建一个采用这种类型的函数f:

type Matrix a = [[a]]
type IntMat = Matrix Integer
Run Code Online (Sandbox Code Playgroud)

然后在矩阵的每个"行"上做一些事情,名字就是内部列表.

问题是,我不太确定如何解决它们!:S如果我没有任何意义,请让我解释一下!

先感谢您!

ken*_*ytm 5

"找到每个内部列表的最大值","找到它们的长度以便稍后使用",它们都可以用map高阶函数完成.

Prelude> let a = [[1,2,3],[4,5,6],[6,7,8]] :: [[Integer]]
Prelude> map maximum a
[3,6,8]
Prelude> map length a
[3,3,3]
Run Code Online (Sandbox Code Playgroud)

如果您有一个列表M = [a, b, c, d, ...],并且想要使用函数f将列表转换为N = [f(a), f(b), f(c), f(d), ...],那么您可以使用函数map(N == map f M).