如何将列表的元素组合成 Ocaml 中的一个元素?
How to combine elements of a list into one element in Ocaml?
我试图在 Ocaml 中将整数列表组合成一个整数。
例如,
输入 - 列表 = [2,3,6,7,9]
期望输出 - 97632.
我知道如何迭代列表,但我应该使用什么 operation/function 来获得所需的输出?
任何时候将列表转换为另一个值时,您都应该考虑使用 List.fold_left
或 List.fold_right
。它以另一种方式工作,但请考虑以下内容。
# List.fold_left (fun i x -> i ^ string_of_int x) "" [1;2;3;4];;
- : string = "1234"
#
请参阅 https://caml.inria.fr/pub/docs/manual-ocaml/libref/Stdlib.List.html 处的列表折叠函数文档。
我试图在 Ocaml 中将整数列表组合成一个整数。 例如, 输入 - 列表 = [2,3,6,7,9] 期望输出 - 97632.
我知道如何迭代列表,但我应该使用什么 operation/function 来获得所需的输出?
任何时候将列表转换为另一个值时,您都应该考虑使用 List.fold_left
或 List.fold_right
。它以另一种方式工作,但请考虑以下内容。
# List.fold_left (fun i x -> i ^ string_of_int x) "" [1;2;3;4];;
- : string = "1234"
#
请参阅 https://caml.inria.fr/pub/docs/manual-ocaml/libref/Stdlib.List.html 处的列表折叠函数文档。