我是OCaml的新手,我正在审核课程.我有一个作业提示,上面写着:"合并xs ys需要两个整数列表,每个列表按递增顺序排序,并按排序顺序返回单个合并列表."
我已经成功编写了一个有效的函数:
let rec merge xs ys = match xs with
| [] -> ys
| hxs::txs -> if hxs <= (match ys with
| [] -> hxs
| hys::tys -> hys)
then hxs :: merge txs ys
else match ys with
| [] -> xs
| hys::tys -> hys :: merge xs tys in
merge [-1;2;3;100] [-1;5;1001]
;;
Run Code Online (Sandbox Code Playgroud)
我想知道我的代码是否被认为是可接受的OCaml风格?我想避免形成任何坏习惯.它感觉组成密集,但也许那是因为我还不习惯OCaml.
谢谢.
ocaml ×1