Hi,

I want to find the combination of array elements

like for example

a = [1,2,3,4]

the combinations are

[1,2,3,4]

[1,3,4,2]

[1,2,3]

etc..

If anybody knows plz reply me

Hi,

I want to find the combination of array elements

like for example

a = [1,2,3,4]

the combinations are

[1,2,3,4]

[1,3,4,2]

[1,2,3]

etc..

If anybody knows plz reply me

Do you want to know the number of possible combinations or the

combinations themselves?

Pragash Mr. wrote:

Hi,

I want to find the combination of array elementslike for example

a = [1,2,3,4]

the combinations are

[1,2,3,4]

[1,3,4,2]

[1,2,3]

etc..If anybody knows plz reply me

Think this works,

def combinations(array)

return [] if array == []

return [array, []] if array.length == 1

# split [1,2,3] => [1], [2,3]

left, right = array[0..0], array[1..-1]

rtn = []

combinations(right).each do |r_array|

rtn << r_array

rtn << left + r_array

end

return rtn

end

combinations([1])

=> [[1]]

combinations([1])

=> [[1], []]

combinations([1,2])

=> [[2], [1, 2], [], [1]]

combinations([1,2,3])

=> [[3], [1, 3], [2, 3], [1, 2, 3], [], [1], [2], [1, 2]]

enjoy.

http://www.workingwithrails.com/person/12394-matthew-rudy-jacobs