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

जावास्क्रिप्ट में बाइनरी ट्री


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

यहां कुछ शब्दों के साथ बाइनरी ट्री का एक उदाहरण दिया गया है, जिसकी हमने नीचे चर्चा की है -

जावास्क्रिप्ट में बाइनरी ट्री

महत्वपूर्ण शर्तें

पेड़ के संबंध में महत्वपूर्ण शर्तें निम्नलिखित हैं।

  • पथ - पथ एक पेड़ के किनारों के साथ नोड्स के अनुक्रम को संदर्भित करता है।

  • रूट - पेड़ के शीर्ष पर स्थित नोड को रूट कहा जाता है। प्रति पेड़ केवल एक जड़ होती है और रूट नोड से किसी भी नोड तक एक पथ होता है।

  • अभिभावक - रूट नोड को छोड़कर किसी भी नोड का एक किनारा ऊपर की ओर होता है जिसे पैरेंट कहा जाता है।

  • बच्चा - किसी दिए गए नोड के नीचे के नोड को उसके किनारे से नीचे की ओर जोड़कर उसका चाइल्ड नोड कहा जाता है।

  • पत्ती - जिस नोड में कोई चाइल्ड नोड नहीं होता है उसे लीफ नोड कहा जाता है।

  • सबट्री - सबट्री एक नोड के वंशज का प्रतिनिधित्व करता है।

  • विजिटिंग - विज़िटिंग का तात्पर्य नोड पर नियंत्रण होने पर नोड के मान की जाँच करना है।

  • ट्रैवर्सिंग - ट्रैवर्सिंग का अर्थ है एक विशिष्ट क्रम में नोड्स से गुजरना।

  • स्तर - एक नोड का स्तर एक नोड की पीढ़ी का प्रतिनिधित्व करता है। यदि रूट नोड स्तर 0 पर है, तो इसका अगला चाइल्ड नोड स्तर 1 पर है, इसका पोता स्तर 2 पर है, और इसी तरह।

  • कुंजी - कुंजी एक नोड के मान का प्रतिनिधित्व करती है जिसके आधार पर एक नोड के लिए एक खोज ऑपरेशन किया जाना है।


  1. एन-एरी ट्री को बाइनरी ट्री में सी ++ में एन्कोड करें

    मान लीजिए हमारे पास एक एन-आरी पेड़ है। हमें उस पेड़ को एक बाइनरी में एन्कोड करना होगा। बाइनरी ट्री को एन-एरी ट्री में डीसेरिएलाइज़ करने के लिए हमें डिसेरिएलाइज़र भी बनाना होगा। तो, अगर इनपुट पसंद है तो आउटपुट होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - एक फ़ंक्शन एन्कोड () को परि

  1. C++ . में बाइनरी ट्री कैमरा

    मान लीजिए हमारे पास एक बाइनरी ट्री है; हम पेड़ के नोड्स पर कैमरे लगाते हैं। अब नोड पर प्रत्येक कैमरा अपने माता-पिता, स्वयं और उसके बच्चों की निगरानी कर सकता है। हमें पेड़ के सभी नोड्स की निगरानी के लिए आवश्यक न्यूनतम कैमरों की संख्या ढूंढनी होगी। तो, अगर इनपुट की तरह है - तो आउटपुट 1 होगा, क्यों

  1. पायथन में बाइनरी ट्री प्रीऑर्डर ट्रैवर्सल

    मान लीजिए कि हमारे पास एक बाइनरी ट्री है। हमें उस पेड़ के प्रीऑर्डर ट्रैवर्सल को वापस करना होगा। तो अगर पेड़ जैसा है - फिर प्रीऑर्डर ट्रैवर्सल होगा:[3,9,20,15,7] इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - रिक्त सूचियां बनाएं जिन्हें रेस और सेंट कहा जाता है। नोड:=रूट जबकि नोड या सेंट खाली