गहराई-प्रथम और चौड़ाई-प्रथम ग्राफ़ को पार करने के दो सामान्य तरीके हैं।
ग्राफ़ ट्रैवर्सल ग्राफ़ में प्रत्येक शीर्ष पर ठीक एक बार जाने की प्रक्रिया है। ग्राफ़ को पार करने के दो लोकप्रिय तरीके हैं: गहराई-पहला ट्रैवर्सल (या गहराई-पहली खोज) और चौड़ाई-पहला ट्रैवर्सल (या चौड़ाई -पहली खोज). दोनों ट्रैवर्सल के परिणामस्वरूप एक फैला हुआ पेड़ बनता है, जिसे एक वर्ग का उपयोग करके मॉडल किया जा सकता है, जैसा कि नीचे चित्र में दिखाया गया है। ध्यान दें कि Tree एक आंतरिक वर्ग है जो AbstractGraph वर्ग में परिभाषित है। AbstractGraph.Tree किसी तत्व की खोज में परिभाषित Tree इंटरफ़ेस से भिन्न है। AbstractGraph.Tree एक विशेष वर्ग है जिसे नोड्स के माता-पिता-बच्चे के रिश्ते का वर्णन करने के लिए डिज़ाइन किया गया है, जबकि Tree इंटरफ़ेस एक पेड़ में खोज, डालने और हटाने जैसे सामान्य संचालन को परिभाषित करता है। चूँकि एक फैले हुए पेड़ के लिए इन ऑपरेशनों को करने की कोई आवश्यकता नहीं है, AbstractGraph.Tree को Tree के उपप्रकार के रूप में परिभाषित नहीं किया गया है।
Tree वर्ग को AbstractGraph.java में पंक्तियों 226-293 में AbstractGraph वर्ग में एक आंतरिक वर्ग के रूप में परिभाषित किया गया है। कंस्ट्रक्टर जड़, किनारों और खोज क्रम के साथ एक पेड़ बनाता है।
Tree वर्ग सात विधियों को परिभाषित करता है। getRoot() विधि पेड़ की जड़ लौटाती है। आप getSearchOrder() विधि का उपयोग करके खोजे गए शीर्षों का क्रम प्राप्त कर सकते हैं। आप खोज में शीर्ष v के पैरेंट को ढूंढने के लिए getParent(v) का आह्वान कर सकते हैं। getNumberOfVerticesFound() का आह्वान करने से खोजे गए शीर्षों की संख्या वापस आ जाती है। विधि getPath(index) निर्दिष्ट वर्टेक्स इंडेक्स से रूट तक शीर्षों की एक सूची लौटाती है। printPath(v) को लागू करने से रूट से v तक एक पथ प्रदर्शित होता है। आप printTree() विधि का उपयोग करके पेड़ के सभी किनारों को प्रदर्शित कर सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3