में विकर्ण तत्व प्राप्त करने में मैं अपने 2 डी रूबी सरणी के साथ कुछ समस्याएं आ रहा था और जब मैं सरणी स्लाइसिंग करता हूं तो मेरा एलओ बहुत कम हो जाता है। तो उदाहरण के लिए,रुबी को 2 डी ऐरे
require "test/unit"
class LibraryTest < Test::Unit::TestCase
def test_box
array = [[1,2,3,4],[3,4,5,6], [5,6,7,8], [2,3,4,5]]
puts array[1][2..3] # 5, 6
puts array[1..2][1] # 5, 6, 7, 8
end
end
मैं जानना चाहता हूं कि विकर्ण टुकड़ा पाने का कोई तरीका है या नहीं? आइए कहें कि मैं [0,0] से शुरू करना चाहता हूं और 3 का विकर्ण टुकड़ा चाहता हूं। फिर मुझे [0,0], [1,1], [2,2] से तत्व मिलेंगे और मुझे एक सरणी मिल जाएगी [1,4,7] उदाहरण के लिए ऊपर। क्या कोई जादू एक-लाइनर रूबी कोड है जो इसे प्राप्त कर सकता है? 3.times {कुछ जादू सामान?} कर
आप शायद इस पता है, लेकिन 'डालता सरणी [1..2] [1]' बराबर है 'सरणी डालता है [2]', नहीं 'सरणी डालता है [1..2] .map {| arr | आगमन [1]} '। मुझे यकीन नहीं है कि सरणी के सरणी का उपयोग करके चीजों को करने का सही तरीका है, लेकिन मैं कुछ भी बेहतर बनाने में सक्षम नहीं हूं। –
यह मेरा इरादा था। लेकिन आपका जवाब अभी भी बहुत उपयोगी है। धन्यवाद :) –