hke*_*n27 2 ruby arrays string algorithm numbers
我需要帮助来解决这个ruby数组问题.
获取数组的所有子集.仅限独特套装.没有重复任何数字. num_subset([1,2,3])==>结果应该是[[], ["1"], ["1", "2"], ["1", "2", "3"], ["1", "3"], ["2"], ["2", "3"], ["3"]]
def num_subset(arr)
holder =[]
order_subset = [[]]
(arr.length).times do |m|
arr.map do |n|
holder += [n]
order_subset << holder
end
holder =[] # resets holder
arr.shift # takes the first element out
end
order_subset
end
Run Code Online (Sandbox Code Playgroud)
我的结果是==> [[], ["1"], ["1", "2"], ["1", "2", "3"], ["2"], ["2", "3"], ["3"].我的问题是我错过了一个结果 ["1", "3"]
需要一些帮助指出我正确的方向.已经花了好几个小时.不要使用#combination捷径.我需要手动解决这个问题.
a = [1, 2, 3]
arr = []
for i in 0..(a.length) do
arr = arr + a.combination(i).to_a
end
> arr
# [[], [1], [2], [3], [1, 2], [1, 3], [2, 3], [1, 2, 3]]
Run Code Online (Sandbox Code Playgroud)