के लिए अधिकतम मूल्य के साथ रूबी सरणी का तत्व ढूंढना शायद इस प्रश्न का एक बहुत ही सरल जवाब है, लेकिन मैं इस समय अपने जीवन के लिए इसे समझ नहीं सकता। यदि मेरे पास एक निश्चित प्रकार की ऑब्जेक्ट्स की रूबी सरणी है, और उनके पास एक विशेष फ़ील्ड है, तो मैं उस क्षेत्र के लिए सबसे बड़ा मान सरणी का तत्व कैसे ढूंढूं?एक विशेष विशेषता
उत्तर
array.max_by do |element|
element.field
end
या:
array.max_by(&:field)
अधिक सहायक तरीकों के लिए गणना करने योग्य मॉड्यूल के दस्तावेज़ों की जांच करें। –
क्या इससे मदद मिलती है?
my_array.max {|a,b| a.attr <=> b.attr }
(मुझे लगता है कि अपने क्षेत्र का नाम attr
है)
हां यह वही है जो मैं देख रहा था के लिए, ऐरे एपीआई को खराब कर रहा था और कुछ भी नहीं मिला, धन्यवाद, एंबेबल के लिए एपीआई जांचना, धन्यवाद! –
हमेशा गणना करने योग्य API की जांच करें। इसमें सब कुछ है जो आपको चाहिए * और * रसोई सिंक! –
मैं 'max_by' का उपयोग करना पसंद करता हूं क्योंकि यह उपयोग करने में आसान है: ब्लॉक केवल एक ही तर्क लेता है और आपको स्पष्ट रूप से स्पेसशिप (' <=>') ऑपरेटर का उपयोग करने की आवश्यकता नहीं है। –
तुम भी सरणी सॉर्ट कर सकते हैं और उसके बाद अधिकतम, न्यूनतम, दूसरा सबसे बड़ा मूल्य आदि मिलता है
array = array.sort_by {|k,v| v}.reverse
puts hash[0]["key"]
यदि आप केवल न्यूनतम या अधिकतम के लिए जा रहे हैं, तो एल्गोरिदम 'ओ (एन) 'हैं। सॉर्टिंग न्यूनतम 'ओ (एन लॉग एन)' है। इसका उपयोग तब तक न करें जब तक आपको कुछ अनावश्यक प्रदर्शन नुकसान न हो। – Jamie
- 1. सीएसएस विशेष विशेषता
- 2. किसी विशेष विशेषता का मान बदलें
- 3. DropDownListFor विशेषता विशेषता के साथ एक कस्टम विशेषता के साथ?
- 4. एक विशेषता
- 5. किसी विशेष विशेषता वाले सभी वर्गों को ढूंढना
- 6. एसक्यूएल सर्वर में XML तत्व से किसी विशेष विशेषता
- 7. एक विशेषता के लिए बाद_commit
- 8. एक विशेष क्षेत्र
- 9. कैसे एक विशेष कोर
- 10. एक विशेष चरित्र §
- 11. एक विशेष div
- 12. एक विशेष शाखा देखें?
- 13. एक विशेषता तर्क
- 14. एक विशेषता और प्रकार
- 15. एक JSON विशेषता
- 16. मैं एक स्काला विशेषता
- 17. एक्सएसएलटी सॉर्टिंग - एक विशेषता
- 18. कैसे एक कस्टम विशेषता
- 19. मैं एक निश्चित विशेषता
- 20. कैसे एक विशेषता निर्माता
- 21. मैं एक [XMLIgnore] विशेषता
- 22. एक टीडी विशेषता
- 23. एक विशेष आईपी और पोर्ट
- 24. पायथन: BeautifulSoup - नाम विशेषता के आधार पर एक विशेषता मान
- 25. एक सीलबंद विशेषता क्या है?
- 26. सीएसएस विशेषता चयनकर्ता एक href
- 27. मूस ArrayRef विशेषता एक ऐरे
- 28. कोरडाटा विशेषता
- 29. coredata - एक सरणी में एक विशेषता
- 30. विशेषता
संभावित डुप्लिकेट [अधिक ब्लॉक के बिना अधिकतम/मिनट का संक्षिप्त संस्करण] (http://stackoverflow.com/questions/7087717/more-concise-version-of-max-min-without-the-block) –