2013-04-14 5 views
7

मुझे पता है कि बी + पेड़ में थोक लोडिंग है। मैं बस जानना चाहता था कि बी-ट्री में थोक लोडिंग के लिए कोई एल्गोरिदम है। उदाहरण के लिए डेटा की सरणी दी गई है बी-ट्री बनाने का सबसे अच्छा तरीका क्या है?क्या बी-ट्री में थोक लोडिंग के लिए कोई एल्गोरिदम है?

उत्तर

4

वास्तव में उत्तर हाँ है।

बी + -ट्री और सादे बी-पेड़ के बीच मुख्य अंतर यह है कि मूल्य वास्तव में पूर्व के लिए पत्तियों में संग्रहीत होते हैं, जबकि बाद में आपको प्रत्येक नोड्स में मूल्य मिलेंगे। इसलिए बी + -ट्री आपको डेटा को लगभग निरंतर तरीके से स्टोर करने देते हैं, प्रत्येक पत्ते में पूरे सॉर्ट किए गए डेटा का एक संगत टुकड़ा होता है। बी-पेड़ों के लिए यह सच नहीं हो सकता है: एक आंतरिक नोड में कई तत्व होंगे, लेकिन वे संगत wrt नहीं होंगे। पूरे सॉर्ट किए गए डेटासेट।

यह संपत्ति थोक लोडिंग के लिए आवश्यक है: यह प्रक्रिया पहले से क्रमबद्ध डेटासेट पर काम करती है जो इसे एरे में काटकर बी +-ट्री की पत्तियों का निर्माण करेगी। इस प्रकार बी-पेड़ के लिए ऐसा लगता है कि यह काम नहीं कर सकता है।

यदि हम डेटा को एक तरह से सॉर्ट कर सकते हैं जो एक साथ आंतरिक नोड तत्वों को समूहित करता है, तो समस्या हल हो जाती है। ऐसा करने के लिए, किसी को पहले से ही पता होना चाहिए कि तत्वों को कैसे समूहीकृत किया जाएगा। यह संभव हो जाता है।

चलो o (ऑर्डर) को नोड में बच्चों की न्यूनतम संख्या (जो बी-पेड़ ऑर्डर की मूल परिभाषा के अनुरूप है) को कॉल करें। हम रूट नोड पेड़ के उच्चतम स्तर पर होने पर विचार करते हैं, और पत्तियां सबसे कम (चरण 0) पर होती हैं। एक संतुलित संतुलित पेड़ के लिए, सभी पत्तियां वास्तव में एक ही चरण में होंगी।

पेड़ समूह तत्वों का चरण k जो चरण k-1 में कम से कम o तत्वों द्वारा स्थानांतरित किया जाता है। प्रारंभिक क्रमबद्ध करने के बाद, हमें सॉर्टेड सरणी से तत्व निकालना होगा, जो चरण 0 का गठन करता है, और चरण 1 बनाने के लिए उन्हें एक अलग सरणी में समूहित करता है, फिर उस सरणी के साथ चरण 2 के लिए एक नई सरणी में फिर से करें, और प्रक्रिया को दोहराएं जब तक कि नवीनतम सरणी में o तत्वों से कम न हो, जो रूट चरण होगा। तब से, यह संभव है पेड़ मंच सेट से सीधे निर्माण करने के लिए:,

  • निर्माण सूचकांक सरणियों subnodes को
  • निर्माण प्रत्येक नोड के रूप में नोड्स से जोड़ने के लिए

    • विभाजन o तत्वों की सरणियों में प्रत्येक चरण संबंधित इंडेक्स सरणी की जोड़ी * मान सरणी

    परिणामी पेड़ आवश्यक रूप से संतुलित नहीं होगा। यह डेटासेट में प्रविष्टियों की संख्या और o पर निर्भर करता है। यद्यपि एक बेहतर वितरित वृक्ष होने के चरणों को बनाने में उपयोग किए जाने वाले अंतराल को ट्यून करना संभव होना चाहिए।

    बी-पेड़ के थोक भार के लिए आवश्यक सभी कार्यों में बी +-ट्री के मुकाबले ज्यादा कठिन है, लेकिन यह संभव है।

  • संबंधित मुद्दे