Хорошо, я искал ответы в Интернете, а также часами искал в своем программисте ruby, но я не могу разобраться с этим. Я пишу скрипт для создания всевозможных комбинаций из элементов в массиве.
ar = ["a","b","c","d"]
На данный момент я могу сделать следующие комбинации:
["a"],["a","b"],["a","b","c"],["a","b","c","d"],["b"],["b","c"],["b","c","d"],["c"],["c","d"],["d"]
Это нормально, но я не могу найти способ поиска этих комбинаций, например ["a","c"] or ["a","c","d"] or ["a","d"]
и т. Д. *
Пока мой код выглядит так:
def combinaties(array)
combinaties = []
i=0
while i <= array.length-1
combinaties << array[i]
unless i == array.length-1
array[(i+1)..(array.length-1)].each{|volgend_element|
combinaties<<(combinaties.last.dup<<volgend_element)
}
end
i+=1
end
end