/ / रूबी एरे को बहुआयामी ऐरे में मिलाएं - रूबी

रूबी एरे को बहुआयामी ऐरे में मिलाएं - रूबी

निम्नलिखित दो सरणियों को एक बहुआयामी सरणी में विलय करने का सबसे अच्छा तरीका क्या है?

x = ["A", "B", "C"]
y = ["D", "E", "F"]

वांछित परिणाम:

z = [["A", "D"], ["A", "E"], ["A", "F"], ["B", "D"], ["B", "E"], ["B", "F"], ["C", "D"], ["C", "E"], ["C", "F"]]

उत्तर:

उत्तर № 1 के लिए 6

आप उपयोग कर सकते हैं सरणी # उत्पाद:

x = ["A", "B", "C"]
y = ["D", "E", "F"]

result = x.product(y)

puts result.inspect

जवाब के लिए 2 № 2

यहाँ एक रास्ता है, हालांकि जरूरी नहीं कि सबसे आसान तरीका है:

x = ["A", "B", "C"]
y = ["D", "E", "F"]

result = []

x.each do |x|
y.each do |y|
result << [x, y]
end
end

puts result.inspect

अद्यतन करें: यहाँ एक और अधिक संक्षिप्त तरीका है:

x = ["A", "B", "C"]
y = ["D", "E", "F"]

puts x.map { |x|
y.map { |y| [x, y] }
}.inspect

जवाब के लिए 0 № 3

इसे करने का एक और तरीका इस प्रकार है:

x = ["A", "B", "C"]
y = ["D", "E", "F"]

print x.concat(y).each_slice(2).to_a    # => [["A", "B"], ["C", "D"], ["E", "F"]]