How to remove a list of elements from a list (F#)

Viewed 51

Is there a better way of doing removing a list of elements from another list? So far I've been doing this, but its not efficient for larger lists

let values, valuesToRemove = [ for i in 0..10 -> i ], [ 0; 1; ]
let newValues = values
                |> List.filter ((<>) valuesToRemove.[0])
                |> List.filter ((<>) valuesToRemove.[1])
1 Answers

You can use List.contains here, e.g.:

let values, valuesToRemove = [ for i in 0..10 -> i ], [ 0; 1; ]
let newValues = values
                |> List.filter (fun x -> not (List.contains x valuesToRemove))
Related