7
這是一個學校作業,但我即將發佈的內容僅由我和我完成。因此,我只需要你的幫助,在我被困住的任務中邁出一小步。F#如果語句列表存在
let rec removeDuplicates2 xs =
match xs with
|[]->[]
|y::ys -> if y = (List.exists y ys) then
(removeDuplicates2 ys)
else
y::(removeDuplicates2 ys)
printfn "%A" (removeDuplicates2 [3;1;3;2;1]) // result must be [3;1;2]
什麼,我需要幫助正在if語句來檢查,如果元素y是列表YS成員
此刻我得到的錯誤說:「這表達預計將有類型 ''a - > bool' 但這裏有 'bool''
有人能告訴我我做錯了什麼嗎?
首先,你將'y'與'List.exists y ys'比較,它應該返回true或false。你很可能想寫'if(List.exists y ys)then' –
其次,'List.exists'需要一個函數。如果你想檢查一個列表是否包含一個項目使用'List.contains' –
我認爲這個練習並不意味着使用標準功能:) –