Die Funktion mem akzeptiert eine Liste und ein var X als Parameter und überprüft, ob die Liste den Wert X enthält und gibt true zurück, wenn es wahr ist, und false, falls es vorhanden ist.f # Schnittpunkt der Listen
let rec intersection list1 list2 = match list1 with
| head :: tail -> match list2 with
| head :: tail -> if mem list2 list1.Head = true
then (*add the value to a list*) else intersection list1.Tail list2
| [] -> failwith "Second list is empty"
| [] -> failwith "First list is empty"
Ich bin ganz neu in F # und das Problem, das ich jetzt habe ist, ich weiß nicht, wie und fügen Sie dann den Wert auf eine Liste in der (auf einer Listefügen Sie den Wert) zu konstruieren. Ich habe den Code noch nicht getestet, da ich diesen Schritt zuerst ausführen muss, um keine Fehler zu bekommen, also bin ich nicht 100% sicher, wie es funktioniert.
Ich versuche, 2 Listen zu schneiden, ich weiß, dass es Funktionen für diese "Set.Intersect list1 list2" gibt. Die Einrückung ist ein bisschen seltsam hier, da ich nicht zu lange Reihen haben wollte, aber Sie werden wahrscheinlich sowieso verstehen.