निम्नलिखित दो सरणियों को एक बहुआयामी सरणी में विलय करने का सबसे अच्छा तरीका क्या है?
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"]]