मेरे पास एक काउंटर हैश है कि मैं गिनती से सॉर्ट करने की कोशिश कर रहा हूं। जिस समस्या में मैं चल रहा हूं वह यह है कि डिफ़ॉल्ट Hash.sort फ़ंक्शन संख्या आकार के बजाए तारों की तरह संख्याओं को टाइप करता है।रूबी हैश को संख्या मूल्य से कैसे क्रमबद्ध करें?
यानी देखते हुए हैश:
metrics = {"sitea.com" => 745, "siteb.com" => 9, "sitec.com" => 10 }
इस कोड चल रहा है:
metrics.sort {|a1,a2| a2[1]<=>a1[1]}
एक क्रमबद्ध सरणी वापस आ जाएगी:,
[ 'siteb.com', 9, 'sitea.com', 745, 'sitec.com', 10]
हालांकि 745 9 की तुलना में एक बड़ी संख्या है 9 सूची में पहले दिखाई देगा। यह दिखाने की कोशिश करते समय कि शीर्ष गिनती किसके पास है, यह मेरी जिंदगी को मुश्किल बना रहा है। :)
संख्या मूल्य के आधार पर हैश (या सरणी भी) को सॉर्ट करने के तरीके पर कोई विचार?
मैं किसी भी मदद की सराहना करता हूं।
आप क्या रूबी संस्करण का उपयोग करते हैं? आपका सॉर्ट परिणाम बहुत अजीब है – fl00r