सी एसटीएल में ट्री कंटेनरों की अनुपस्थिति
सी स्टैंडर्ड टेम्पलेट लाइब्रेरी (एसटीएल) किसी भी "ट्री" कंटेनर की पेशकश नहीं करती है . यह चूक सवाल उठाती है: क्यों? और उपयुक्त विकल्प क्या हैं?
एसटीएल में कोई ट्री कंटेनर क्यों नहीं?
ऐसे दो कारण हैं जिनकी वजह से कोई ट्री डेटा संरचना की इच्छा कर सकता है:
1. पदानुक्रमित वस्तु प्रतिनिधित्व: एक वृक्ष संरचना का उपयोग करके कोड में एक वृक्ष जैसी वस्तु पदानुक्रम का मॉडलिंग करना।
2. कुशल पहुंच विशेषताएँ: बाइनरी खोज पेड़ों के समान, ऑर्डरिंग संबंधों के आधार पर तत्वों तक त्वरित पहुंच सुनिश्चित करना।
वृक्ष संरचनाओं के लिए विकल्प
आदेशित सहयोगी कंटेनर:
ये कंटेनर प्रभावी रूप से संतुलित बाइनरी ट्री के रूप में काम करते हैं, जो सम्मिलित करने, हटाने और खोजों के लिए कुशल लॉगरिदमिक एक्सेस समय की गारंटी देते हैं। वे अतिरिक्त लाभ भी प्रदान करते हैं, जैसे:
उदाहरण:
यदि कोई कर्मचारियों के पदानुक्रम को संग्रहीत करना चाहता है, जिसमें मूल में एक सीईओ और अधीनस्थों के कई स्तर हैं, तो कोई इसका उपयोग कर सकता है एक std::map<:string std::vector>>। यहां, मानचित्र कुंजियाँ कर्मचारी के नाम होंगी, और संबंधित वैक्टर उनकी प्रत्यक्ष रिपोर्ट के नाम रखेंगे।
निष्कर्ष
जबकि सी एसटीएल प्रदान नहीं करता है ट्री कंटेनर सीधे, यह पदानुक्रमित प्रतिनिधित्व और कुशल पहुंच विशेषताओं दोनों के लिए उपयुक्त विकल्प प्रदान करता है। बूस्ट की ग्राफ़ लाइब्रेरी जटिल ग्राफ़ संरचनाओं को संभाल सकती है, जबकि ऑर्डर किए गए सहयोगी कंटेनर एक सामान्य और अच्छी तरह से स्थापित इंटरफ़ेस के साथ पेड़ जैसी पहुंच प्रदान करते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3