List 函数删除元素相同但顺序不同的元组列表
假设我有一个元组列表,比如List 函数删除元素相同但顺序不同的元组列表,list,haskell,tuples,List,Haskell,Tuples,假设我有一个元组列表,比如 [(1,2)、(2,1)、(3,5)] 我如何定义一个函数,以便删除具有相似元素但顺序不同的元组?所以这个列表就变成了 [(1,2)、(3,5)]与相等函数一起使用,该函数将交换或未交换相等元素的两个元组比较为相等。使这更容易: nubSwapped :: (Eq a) => [(a, a)] -> [(a, a)] nubSwapped = nubBy $ \a b -> a == b || swap a == b
[(1,2)、(2,1)、(3,5)]
我如何定义一个函数,以便删除具有相似元素但顺序不同的元组?所以这个列表就变成了
[(1,2)、(3,5)]
与相等函数一起使用,该函数将交换或未交换相等元素的两个元组比较为相等。使这更容易:
nubSwapped :: (Eq a) => [(a, a)] -> [(a, a)]
nubSwapped = nubBy $ \a b -> a == b || swap a == b