इस द्विआधारी खोज वृक्ष (बीएसटी) उदाहरण एल्गोरिथ्म समझ में नहीं आता

वोट
2

से हटाए जाने के कोड में यहाँ

मैं विलोपन कोड के पहले टुकड़ा समझ में नहीं आता (नोड दो बच्चों की जरूरत नहीं है, जहां)।

नोड हटाया जा रहा है एक माता पिता और एक बच्चे ही है (यानी नोड एक बच्चा है) कैसे काम करता है?

कोड सिर्फ नोड हटा रहा है और अब अनाथ बच्चे को माता-पिता के संकेत की स्थापना नहीं।

क्या मैं कुछ भूल रहा हूँ?

12/04/2011 को 20:58
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
1

मैं गलत हो सकता है, लेकिन संदर्भित साइट पर कोड ठीक लगता है। मैं यह है, हालांकि परीक्षण नहीं किया।

यह सच हटाने समारोह एक तर्क प्रकार BSTNode ** नोड के है जो लेता है क्योंकि है। इस नोड के लिए एक सूचक नहीं है। यह एक सूचक है नोड ही माता-पिता की नोड सूचक को । यह एक छोटे से खराब हो सकता है, लेकिन मैं साकार क्या कोड करता है के बाद स्वीकार करना होगा, यह अपनी तरह से समाधान में एक सुंदर है। तो जब आप को फिर से लिखने (* नोड), आप नोड पुनर्लेखन नहीं कर रहे हैं ही , इसके बजाय आप नोड के माता पिता की पुनः लिख रहे हैं नोड के लिए सूचक । प्रभावी ढंग से कोड कर रहा है आप एक से थोड़ा विकृत ढंग से क्या सुझाव: डी। आशा है कि आप समझ में आ रहा क्या मतलब है और मुझे आशा है कि मैं इसे अधिकार मिल गया।

मैं भी सुझाव है कि आप लाल-काले पेड़ों के बारे में आगे पढ़ने, क्योंकि यह लेख केवल जानकारी देता है बनाने पेड़, लेकिन वर्णित संरचना इसकी ऊंचाई के लिए कोई सीमा नहीं asymptotic है। तो, उदाहरण के लिए आप इस संरचना में क्रमबद्ध मूल्यों धक्का, यह एक जुड़ा सूची के बजाय एक संतुलित पेड़ हो जाएगा।


12/04/2011 को 21:25
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more