concatr ::Integer -> [[Integer]] -> [[Integer]]
concatr x (y) = [x] : y
concatr x (y:ys) = concatr x y: concatr x ys
私はこれの非常に多くの組み合わせを試したので、頭が痛くなり始めました. 私は正確に何を間違っていますか?渡されたリストのすべてのサブリストに整数を入れたいだけです。
concatr ::Integer -> [[Integer]] -> [[Integer]]
concatr x (y) = [x] : y
concatr x (y:ys) = concatr x y: concatr x ys
私はこれの非常に多くの組み合わせを試したので、頭が痛くなり始めました. 私は正確に何を間違っていますか?渡されたリストのすべてのサブリストに整数を入れたいだけです。
機能を使用できますmap。
concatr :: Integer -> [[Integer]] -> [[Integer]]
concatr x ys = map (x:) ys
簡潔な解の Eta reduce :
concatr x = map (x:)
避けたい場合map:
concatr :: Integer -> [[Integer]] -> [[Integer]]
concatr x [] = []
concatr x (y:ys) = (x:y):concatr x ys
2 つのケース:
y:ys、新しいヘッドはであり、残りの部分x:yを再帰的に呼び出します。concatr例:concatr 1 [[0],[2]]です[[1,0],[1,2]。