0

ソートされたリストの正しい位置にintを挿入したいと思います。たとえば、2を挿入すると、2番目の位置に挿入されます。

insert :: Int -> [Int] -> [Int
insert x [] = [x]
insert x (y:ys) = if xsy 
                 then x:y:ys else y insert x ys 

誰でも何が悪いのか指摘できますか。ありがとう

4

1 に答える 1

4

Daniel Fischerが言うように、タイプミスがいくつかあります。

  • xsyおそらくである必要がありますx < y

  • y insert x ys;に演算子がありません。リストに値を付加するために必要な演算子は何ですか?(ヒント:リストをパターンマッチングするときに使用します。)

  • ]あなたは後を逃した[Int

  • インデントが間違っています。then少なくとも。まで整列ifするelse必要があり、は新しい行に配置され、。と整列される必要がありthenます。タブでインデントする場合は、代わりにスペースでインデントするようにエディターを設定する必要があります(または、必要に応じて、タブを8スペースとして表示するように設定します。これはHaskellが期待することです)。

それ以外は、行ってもいいです。

于 2012-04-21T00:13:42.640 に答える