Matrix transposition: Difference between revisions

Content added Content deleted
Line 339: Line 339:
4 8
4 8


A version for lists:
<ocaml>let rec transpose m =
assert (m <> []);
if List.mem [] m then
[]
else
List.map List.hd m :: transpose (List.map List.tl m)</ocaml>
Example:
# transpose [[1;2;3;4];
[5;6;7;8]];;
- : int list list = [[1; 5]; [2; 6]; [3; 7]; [4; 8]]


=={{header|Perl}}==
=={{header|Perl}}==