如果我們假設從0計數元素,如何反轉列表的子列表。我希望解決方案是「手動編碼」的。這個任務我遇到了很大的問題。Ocaml中的列表反轉
例如:
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;;
但現在我卡住了。
可以使用相互遞歸函數來跳過列表中的其他每個元素,而不是使用'mod'。 – nlucaroni
@nlucaroni是的,你是對的。考慮到Noran是一個新的學習者,我寫這種方式只是爲了根據問題規範更直接地展示過程。 –
是的,非常感謝。 Greate工作:) –