"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > डिलीट विधि को कार्यान्वित करना

डिलीट विधि को कार्यान्वित करना

2024-07-31 को प्रकाशित
ब्राउज़ करें:142

एवीएल ट्री से किसी तत्व को हटाना बीएसटी से हटाने के समान है, सिवाय इसके कि पेड़ को पुनर्संतुलित करने की आवश्यकता हो सकती है। जैसा कि बीएसटी से तत्वों को हटाना अनुभाग में चर्चा की गई है, बाइनरी ट्री से किसी तत्व को हटाने के लिए, एल्गोरिदम पहले उस नोड का पता लगाता है जिसमें तत्व शामिल है। current उस नोड को इंगित करें जिसमें बाइनरी ट्री में तत्व शामिल है और parent current नोड के पैरेंट को इंगित करें। वर्तमान नोड पैरेंट नोड का बायां बच्चा या दायां बच्चा हो सकता है।
किसी तत्व को हटाते समय दो मामले सामने आते हैं।

केस 1: वर्तमान नोड में कोई बायां बच्चा नहीं है, जैसा कि नीचे चित्र (ए) में दिखाया गया है। current नोड को हटाने के लिए, बस parent नोड को current नोड के दाएं चाइल्ड से कनेक्ट करें, जैसा कि नीचे चित्र (बी) में दिखाया गया है। पैरेंट नोड से रूट तक पथ के साथ नोड्स की ऊंचाई कम हो सकती है। यह सुनिश्चित करने के लिए कि पेड़ संतुलित है, आह्वान करें

balancePath(parent.element);

Implementing the delete Method

केस 2: वर्तमान नोड में एक बायाँ बच्चा है। rightMost को उस नोड पर इंगित करने दें जिसमें current नोड के बाएं उपट्री में सबसे बड़ा तत्व शामिल है और parentOfRightMost को rightMost के मूल नोड पर इंगित करें नोड, जैसा कि नीचे चित्र (ए) में दिखाया गया है। rightMost नोड में दायां बच्चा नहीं हो सकता है लेकिन इसमें बायां बच्चा हो सकता है। current नोड में तत्व मान को rightMost नोड में से बदलें, parentOfRightMost नोड को rightMost के बाएं बच्चे के साथ कनेक्ट करें ] नोड, और rightMost नोड को हटा दें, जैसा कि नीचे चित्र (बी) में दिखाया गया है।

Image description

parentOfRightMost से रूट तक पथ में नोड्स की ऊंचाई कम हो सकती है। यह सुनिश्चित करने के लिए कि पेड़ संतुलित है, आह्वान करें

balancePath(parentOfRightMost);

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/pauike/implementing-the-delete-method-44k3?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3