Splitting list into a list of possible tuples

后端 未结 6 807
被撕碎了的回忆
被撕碎了的回忆 2020-11-28 04:59

I need to split a list into a list of all possible tuples, but I\'m unsure of how to do so.

For example:

pairs [\"cat\",\"dog\",\"mouse\"]

6条回答
  •  遥遥无期
    2020-11-28 05:34

    You can use a list comprehension:

    allpairs :: Eq a => [a] -> [(a,a)]
    allpairs xs = [ (x1,x2) | x1 <- xs, x2 <- xs, x1 /= x2 ]
    

提交回复
热议问题