小编Dav*_*ett的帖子

是否可以在Haskell中执行嵌套的if语句?

我正在尝试对列表中的3个元素进行排序.但是我在将其翻译成haskell时遇到了麻烦.是否有可能在haskell中执行嵌套if语句?我一直在尝试模式匹配,但它永远带我.

if (x < y) {
    if (z < x) swap(x,z);
} else {
   if (y < z) swap(x,y);
else swap(x,z);
} 
  if(z<y) swap(y,z);
Run Code Online (Sandbox Code Playgroud)

这是我试过的

intCMP :: Int -> Int -> Ordering
intCMP a b | a == b =EQ
           | a < b = LT
           | otherwise = GT

sort3 :: Ord a => (a -> a -> Ordering) -> [a] -> [a]
sort3 cmp [a,b,c] = if cmp a b == LT then
                   if cmp a c == …
Run Code Online (Sandbox Code Playgroud)

haskell if-statement

2
推荐指数
2
解决办法
704
查看次数

如何将元组列表转换为haskell中的常规列表?

我想将元组列表转换(a,a)as 列表.这就是我到目前为止所拥有的

map (\(x,y) -> [x,y]) [(1,4),(2,5)] 
> [[1,4],[2,5]]
Run Code Online (Sandbox Code Playgroud)

但我想要的是

> [1,4,2,5]
Run Code Online (Sandbox Code Playgroud)

haskell tuples list

1
推荐指数
2
解决办法
823
查看次数

标签 统计

haskell ×2

if-statement ×1

list ×1

tuples ×1