检查列表是否以 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);;

该代码不仅在OCaml中,而且是错误的,因此翻译它几乎没有意义。

在列表结构上写下案例分析;

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

然后你把它翻译成 SML。

最新更新