Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

डेटा संरचना में B+ ट्री सम्मिलन (B+ tree Insertion)


यहाँ हम देखेंगे कि B+ ट्री में सम्मिलन कैसे किया जाता है। मान लीजिए हमारे पास नीचे जैसा B+ ट्री है:

B+ ट्री का उदाहरण –

डेटा संरचना में B+ ट्री सम्मिलन (B+ tree Insertion)

एक तत्व सम्मिलित करने के लिए, विचार B-ट्री के समान ही है, यदि एक तत्व सम्मिलित किया जाता है, तो उसे पत्ती नोड पर संग्रहीत किया जाएगा। यदि यह किसी आंतरिक नोड में मौजूद है, तो यह वहां भी होगा, स्वयं के दाएं बच्चे के रूप में।

मान लीजिए हम ट्री में 65 सम्मिलित करना चाहते हैं। तो यह 60 से बड़ा है, और 75 से कम है। फिर इसे मध्य उप-ट्री में सम्मिलित किया जाएगा। अब, 65, 63 के बाद नोड में सम्मिलित होगा, फिर वह नोड दो भागों में विभाजित हो जाएगा, 65 ऊपर जाएगा, और 65 उसके दाएं नोड पर भी होगा।

65 सम्मिलित करने के बाद B+ ट्री।

डेटा संरचना में B+ ट्री सम्मिलन (B+ tree Insertion)

एल्गोरिदम

BPlusTreeInsert(root, key) –

इनपुट – ट्री की जड़, और सम्मिलित करने के लिए कुंजी

हम मान लेंगे, कि कुंजी सूची में मौजूद नहीं है
रूट नोड से शुरू करें, 'key' के रूप में कुंजी के लिए सटीक मिलान करें जब तक एक पत्ती नोड न मिल जाए। खोज पथ x₁, x₂, …, xₕ हो। x₁ पहला नोड है यानी रूट, फिर xₕ पत्ती नोड है। प्रत्येक नोड xᵢ, xᵢ₊₁ का माता-पिता है
xₕ में नया ऑब्जेक्ट सम्मिलित करें जहां कुंजी 'key' है, और मान v है
i := h
while xᵢ ओवरफ्लो करता है, do
    xᵢ को दो नोड्स में विभाजित करें, बड़े आधे कुंजियों को एक नए नोड p में ले जाकर।
    if xᵢ पत्ती नोड है, p को पत्ती नोड्स के बीच लिंक्ड सूची में लिंक करें।
    एक कुंजी k की पहचान करें, जिसे चाइल्ड पॉइंटर के साथ पैरेंट लेवल में सम्मिलित किया जाना है जो p की ओर इंगित करता है।
    k का चुनाव नोड xᵢ के प्रकार पर निर्भर करता है। यदि xᵢ पत्ती नोड है, तो हम कॉपी अप करेंगे। इसलिए p में सबसे छोटी कुंजी, पैरेंट लेवल पर k के रूप में कॉपी की जाती है। दूसरी ओर, यदि xᵢ गैर-पत्ती नोड है, तो हम पुश अप करेंगे। इसलिए p में सबसे छोटी कुंजी, पैरेंट नोड में k में कॉपी की जाएगी।
    if i = 0, then
        एक नया इंडेक्स नोड नई रूट के रूप में बनाएं। नई रूट में कुंजी k के साथ नोड स्टोर करें, और दो चाइल्ड xᵢ और p।
        return
    else
        कुंजी k और p की ओर इंगित करने वाला चाइल्ड पॉइंटर, नोड xᵢ₋₁ में सम्मिलित करें।
        i := i – 1
    end if
done

  1. डेटा संरचना में अंतराल हीप (Interval Heaps) डेटा संरचना में अंतराल हीप (Interval Heaps)

    यहाँ हम देखेंगे कि अंतराल हीप (Interval Heaps) क्या हैं। अंतराल हीप पूर्ण बाइनरी ट्री हैं, जिसमें, अंतिम को छोड़कर प्रत्येक नोड में दो तत्व होते हैं। मान लीजिए नोड P में दो तत्वों की प्राथमिकताएं a और b हैं। यहाँ हम a ≤ b मान रहे हैं। हम कहते हैं कि नोड P बंद अंतराल [a, b] को दर्शाता है। यहाँ a, P

  1. डेटा स्ट्रक्चर में बाइनरी ट्री ADT डेटा स्ट्रक्चर में बाइनरी ट्री ADT

    मूल अवधारणा (Basic Concept) बाइनरी ट्री को एक ऐसे ट्री के रूप में परिभाषित किया जाता है जिसमें कोई भी नोड दो से अधिक बच्चे (Children) नहीं रख सकता। किसी भी नोड की उच्चतम डिग्री (Degree) दो होती है। इसका अर्थ है कि बाइनरी ट्री की डिग्री शून्य, एक या दो हो सकती है। उपरोक्त आकृति में, बाइनरी ट्री मे

  1. डेटा स्ट्रक्चर में वर्चुअल ट्री में स्प्ले (Splay in Virtual Tree) डेटा स्ट्रक्चर में वर्चुअल ट्री में स्प्ले (Splay in Virtual Tree)

    वर्चुअल ट्री में, कुछ एज को सॉलिड (Solid) माना जाता है और कुछ को डैश्ड (Dashed)। सामान्य स्प्लेिंग (Splaying) केवल सॉलिड ट्रीज़ में की जाती है। वर्चुअल ट्री में नोड y पर स्प्ले करने के लिए, निम्न विधि लागू की जाती है। एल्गोरिदम ट्री को तीन बार देखता है, प्रत्येक पास में एक बार, और इसे बदलता है। पहल