Список реверсивный в Окамле
Как отменить даже подсписки списка, если мы предположим, что мы считаем элементы с 0. Я хочу, чтобы решение было «закодировано вручную». У меня большая проблема с этой задачей.
Например:
Function([[1;2;3] ; [2;3] ; [1;2;3] ; [5;6;7]])
возвращает:
([[3;2;1] ; [2;3] ; [3;2;1] ; [5;6;7]])
Я уже создал функцию, которая переворачивает один список:
let rev =
let rec rev_append acc l =
match l with
[] -> acc
| h::t -> rev_append (h::acc) t in
fun l -> rev_append [] l;;
Но сейчас я застрял.