我只是寻找一个小小的建议重写代码,如何使用尾递归如何使用尾递归
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