] यह लेख एक समाधान का परिचय देता है जो चेक को अनुकूलित करने के लिए एक मानचित्र का उपयोग करता है। उदाहरण के लिए, {1, 2, 3} {1, 2, 3, 4} का एक सबसेट है, जबकि {1, 2, 2} {1, 2, 2, 3, 4} का सबसेट नहीं है। यह मूल्य के रूप में प्रत्येक तत्व की गिनती के साथ, दूसरे स्लाइस से एक नक्शा का निर्माण करता है। इसके बाद, यह पहले स्लाइस के माध्यम से पुनरावृत्ति करता है और मानचित्र में प्रत्येक तत्व की उपस्थिति को सत्यापित करता है। यदि सभी तत्व पर्याप्त डुप्लिकेट के साथ पाए जाते हैं, तो पहले स्लाइस को एक सबसेट माना जाता है।
// सबसेट सही है अगर पहला सरणी पूरी तरह से है
// दूसरे सरणी में निहित। कम से कम होना चाहिए
// दूसरे में एक ही संख्या में डुप्लिकेट मूल्यों की संख्या
// पहले में हैं।
फंकस सबसेट (पहला, दूसरा [] int) बूल {
सेट: = मेक (मानचित्र [int] int)
_ के लिए, मान: = रेंज सेकंड {
सेट [मान]
}
_ के लिए, मान: = पहले रेंज {
यदि गिनती, ठीक है: = सेट [मान]; !ठीक है {
विवरण झूठा है
} और अगर गिनती
true गलत
निष्कर्ष
यह मानचित्र-आधारित समाधान कुशलता से निर्धारित करता है कि क्या एक पूर्णांक स्लाइस दूसरे का एक सबसेट है, संभावित डुप्लिकेट मानों को संभालना। यह गो में इस सामान्य समस्या को हल करने के लिए एक अनुकूलित दृष्टिकोण प्रदान करता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3