n维列表的rev函数

时间:2017-04-18 14:07:35

标签: list f# reverse

我尝试制作一个功能,其中列出了一些类型列表,其中' a可以是类型&b; b列表,&b; b可以是类型' c列表等等。它应该还原列表中的每个列表,这样如果' a是一个列表,那么“a”也应该还原,等等。

let RevAll xs =
   let rec rev acc = function
       | (_::_)::__ as M -> rev ((rev List.Empty List.head M)::acc) (List.tail M)
       | x::xs           -> rev (x::acc) xs
       | []              -> acc
   rev List.Empty xs

Vs的'编译器无法阻止类型,因此它不起作用。我的问题如下。有没有办法在F#中创建一个带有n维列表的函数,并在不指定维度的情况下还原该列表中的每个维度?

0 个答案:

没有答案
相关问题