Mag*_*ist 11 erlang functional-programming
给定如下的矩阵,将其转换为90度,进入下面的第二个矩阵.你会如何以最干净的方式做到这一点?简洁/简洁/清晰的解决方案,其中易于掌握的点是优选的.
从
[[A1,A2,A3],
[B1,B2,B3],
[C1,C2,C3]]
Run Code Online (Sandbox Code Playgroud)
至
[[A1,B1,C1],
[A2,B2,C2],
[A3,B3,C3]]
Run Code Online (Sandbox Code Playgroud)
编辑:我意识到原始问题并不清楚.我想知道如何在Erlang中做到这一点.
Kis*_*rke 16
简化已经给出的解决方案,您可以在以下简短的范围内完成:
-module(transp).
-export([transpose/1]).
transpose([[]|_]) -> [];
transpose(M) ->
[lists:map(fun hd/1, M) | transpose(lists:map(fun tl/1, M))].
Run Code Online (Sandbox Code Playgroud)