ठीक है, तो यह एक साक्षात्कार प्रश्न है जो मुझे मिला, और उस समय केवल मध्यस्थ प्रदर्शन किया। मैं सोच रहा हूं कि इष्टतम समाधान क्या है और यह कैसे सर्वोत्तम रूप से कार्यान्वित किया जाता है।कई क्रमबद्ध सूचियों पर एक इटरेटर कैसे बनाएं?
आपको कई क्रमबद्ध सूचियां दी गई हैं, कुछ बनाएं जो हमें इन सभी सूचियों को सबसे छोटे से सबसे बड़े तत्व में पुन: सक्रिय करने की अनुमति देती है।
उदाहरण:
{ -2, 5, 10}
{ 2, 9, 11}
{ -5, 9}
-> -5, -2, 2, 5, 9, 9, 10, 11
अद्यतन:
से # सी सवाल और जवाब और विशेष रूप से @Nican अतः चैट मदद का एक सा के साथ, मैं इस जहाज मिल गया है किसी भी तरह उड़ने के लिए। मैंने अपने समाधान कोड को अन्य समाधानों की अनुमति देने के उत्तर के रूप में भी पोस्ट किया है।
मैंने जो पोस्ट नीचे पोस्ट किया है वह अभी भी गन्दा है, और विशेष रूप से मैंने == और! = सही ढंग से लागू नहीं किया है। मुझे अभी भी उन पर मदद चाहिए। इस सवाल का
स्वच्छ और minimalistic कस्टम इटरेटर कार्यान्वयन ऑनलाइन ढूँढना के लिए
औचित्य है कि आम नहीं है। और मेरा मानना है कि यह प्रश्न दूसरों के लिए इटेटर और सर्वोत्तम प्रथाओं की समझ को बढ़ाने के लिए एक अच्छा प्रारंभिक बिंदु के रूप में कार्य कर सकता है।
यह सुनिश्चित करने के लिए कि "अंतर्निहित अंत() को किस प्रकार का मतलब है, यह सुनिश्चित करने के लिए कि आप अंतर्निहित सिरों में से कौन सा सबसे बड़ा हैं, यह सुनिश्चित नहीं है।" * मैं नहीं देख सकता कि इससे आपकी मदद कैसे होगी। बस 'एंड()' एक पहचानकर्ता ऑब्जेक्ट को एक पहचानकर्ता के साथ वापस करें जो आपको बताता है कि आप अनुक्रम के अंत में हैं। फिर सुनिश्चित करें कि आपका '==' ऑपरेटर इसे संभालता है। एक फॉरवर्ड इटरेटर के लिए '++', असाइनमेंट ऑपरेटर इत्यादि लिखें, फिर 'const_iterator' बनाने के लिए रिफैक्टर भी। – MFisherKDX