私はOCamlでコーディングに戻っています。私はそれを逃してしまったので、私はこの言葉で私の推論を完全に失いました。OCaml:リスト内の要素の組み合わせ、関数的推論
私がしたいことは、n個のリストのセットの間の要素の組み合わせです。 私はまず、任意のサイズの2つのリストの間で要素の組み合わせを試みることによって問題を分解しました。
リストをl1 = [1;2;3]
とl2 = [10,20]
とする必要があるとします。私が何をしたいか
は、以下のリスト入手です:
l_res = [10;20;20;40;30;60]
を私はこの使用したループ構造を行う方法を知っているが、私は本当に彼らなしでこれを解決したいです。
私は次のことを試してみました:
let f l1 l2 =
List.map (fun y -> (List.map (fun x -> x * y) l1) l2
しかし、これは動作するようには思えません。私が得るタイプはf : int list -> int list -> int list list
ですが、私は望みますf : int list -> int list -> int list
私はすでに複雑になっていると感じています。
私は何を欠席しましたか?あなたが不足している何
あなたは完全に正しいです。私は本当に間違ったことをしていましたが、私はペンと紙でそこに着いていませんでした。洞察力ありがとう! –
ようこそ。私はあなたの投稿を編集してより明確にするために自由を取った。 ;-) OCamlにようこそ! – Lhooq