嘗試創建一組名稱的每個排列並將它們作爲成對放入多維數組中,然後刪除任何重複項。我遇到的問題是遍歷數組,比較兩個值並刪除該數組(如果它們相同)。ruby從多維數組中刪除重複項
names = ["Bob", "Dave", "Clive"]
names2 = names.repeated_combination(2).to_a
[["Bob", "Bob"], ["Bob", "Dave"], ["Bob", "Clive"], ["Dave", "Dave"], ["Dave", "Clive"], ["Clive", "Clive"]]
這將返回一組獨特的多維數組
names2.each { |x| x.delete_if { |y| y.slice(0) == y.slice(1) }}
,但它返回相同的陣列與重複之前。 我試着在幾個地方追加'uniq',但這沒什麼區別。
只提預期輸出...你是否想刪除'[「Bob」,「Bob」]'作爲重複項? –
爲什麼不試試'names.combination(2).to_a'? –