在SML中检查列表中的相等性

时间:2010-09-29 09:26:42

标签: equality sml

我想编写一个检查SML中列表相等性的函数 例如 : [1,2,3] = [1,2,3]; val it = true:bool

所以不是写下整个事情,而是想制作一个带有两个预定义列表的函数,然后比较它们,这样如果list01 = [1,2,3]和list09 = [1,2,3] 然后有趣的等于(list01,list09);将返回-val it = true:bool;

提前填写任何想法/提示和帮助:)

2 个答案:

答案 0 :(得分:7)

您似乎意识到=适用于列表,所以(正如我在评论中已经说过的那样)我不明白为什么您需要定义equal函数。

话虽如此,你可以写:

fun equal (a, b) = (a = b);

答案 1 :(得分:1)

这是一个未经检查的样本:

fun compare ([], []) = true # both empty
    |   compare (x::xs, y::ys) = (x = y) and compare(xs,ys)
    |   compare (_, _) = false # different lengths