नेस्टेड स्लाइस के साथ स्ट्रक्चर्स के एक स्लाइस को सॉर्ट करना
गो में, आप बिल्ट-इन सॉर्ट पैकेज का उपयोग करके कस्टम स्ट्रक्चर्स के स्लाइस को सॉर्ट कर सकते हैं। निम्नलिखित कोड पर विचार करें जो दो संरचनाओं, माता-पिता और बच्चे को परिभाषित करता है, जो माता-पिता-बच्चे के रिश्ते का प्रतिनिधित्व करता है:
type Parent struct {
id string
children []Child
}
type Child struct {
id string
}
मान लें कि आपके पास मूल संरचनाओं का एक टुकड़ा है और आप उन्हें दो मानदंडों के आधार पर क्रमबद्ध करना चाहते हैं:
सॉर्टिंग मानदंड:
वापसी माता-पिता[i].id // प्रत्येक माता-पिता के लिए, बच्चों के स्लाइस में प्रत्येक बच्चे को आईडी के आधार पर क्रमबद्ध करें
के लिए _, माता-पिता:= रेंज माता-पिता {sort.Slice(parent.children, func(i) , जे इंट) बूल { returnparent.children[i].idreturn parents[i].id
यह Parent.id के आधार पर पैरेंट स्लाइस को सॉर्ट करता है।sort.Slice(parent.children, func(i, j int) bool { return parent.children[i].id
परिणाम अपेक्षित आउटपुट के साथ संरेखित होता है:[{1 [{7} {8} {9}]} {2 [{4} {5} {6}]} {3 [{1} {2} {3}]}]
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3