检查列表是否以ml语言排序

时间:2018-10-20 15:27:49

标签: ml

我想用ml语言程序编写可以检查列表是否已排序的程序,但是我是该语言的新手

我写了下面的代码,看起来很正常

我可以在ml编程中使用任何技巧

  

ml编程语言

let issorted x = match x with 
[] -> true
| _::[] -> true
| _::_ -> issorted_helper (x);; 



let rec issorted_helper x = match x with
| [] -> true
| h::t ->
    if h > t
        false
    else
        issorted_helper(t);;

1 个答案:

答案 0 :(得分:1)

该代码不仅在OCaml中,而且也是错误的,因此翻译它毫无意义。

写下列表结构的案例分析;

  • 空列表已排序
  • 具有一个元素的列表被排序
  • 如果一个元素具有多个元素的列表的前两个元素是按顺序排列的,则对列表进行排序。

然后将其翻译为SML。