我只是尋找一個小小的建議重寫代碼,如何使用尾遞歸如何使用尾遞歸
open Core.Std;;
let rec dig x =
match x with
| 0 -> []
| _ -> x :: dig (x - 1)
;;
let() =
let numbers = dig 10 in
List.iter ~f:(Printf.printf "%d, ") numbers;
Printf.printf "\n";
;;
重寫代碼的任何建議,將有助於
這不完全是我要找的。您的功能會增加順序,但我正在嘗試創建遞減順序。 – grigoriytretyakov
你應該用'List.rev'來取消結果以保持順序 – ivg