ग्राफ एक गैर-रेखीय डेटा संरचना है। यह नोड्स का उपयोग करके डेटा का प्रतिनिधित्व करता है, और किनारों का उपयोग करके उनके संबंध। एक ग्राफ G में दो खंड होते हैं। कोने, और किनारे। सेट वी का उपयोग करके वर्टिस का प्रतिनिधित्व किया जाता है, और किनारों को सेट ई के रूप में दर्शाया जाता है। इसलिए ग्राफ नोटेशन जी (वी, ई) है। आइए विचार प्राप्त करने के लिए एक उदाहरण देखें।
इस ग्राफ में पांच शीर्ष और पांच किनारे हैं। किनारों को निर्देशित किया जाता है। उदाहरण के तौर पर, यदि हम शीर्ष को जोड़ने वाले किनारे B और D को चुनते हैं, तो स्रोत शीर्ष B है और गंतव्य D है। इसलिए हम B को D पर ले जा सकते हैं लेकिन D से B पर नहीं जा सकते।
रेखांकन गैर-रैखिक हैं, और इसकी कोई नियमित संरचना नहीं है। स्मृति में एक ग्राफ का प्रतिनिधित्व करने के लिए, कुछ अलग शैलियाँ हैं। ये शैलियाँ हैं -
- आसन्नता मैट्रिक्स प्रतिनिधित्व
- एज सूची प्रतिनिधित्व
- आसन्नता सूची प्रतिनिधित्व
आसन्नता मैट्रिक्स प्रतिनिधित्व
हम एडजेंसी मैट्रिक्स का उपयोग करके एक ग्राफ का प्रतिनिधित्व कर सकते हैं। दिया गया मैट्रिक्स एक आसन्न मैट्रिक्स है। यह एक बाइनरी, स्क्वायर मैट्रिक्स है और ith पंक्ति से jth कॉलम तक, यदि कोई किनारा है, तो उस स्थान को 1 के रूप में चिह्नित किया गया है। जब हम आसन्न मैट्रिक्स का उपयोग करके एक अप्रत्यक्ष ग्राफ का प्रतिनिधित्व करने का प्रयास करेंगे, तो मैट्रिक्स सममित होगा।
एज लिस्ट रिप्रेजेंटेशन
एक आयामी सरणी का उपयोग करके भी रेखांकन का प्रतिनिधित्व किया जा सकता है। इसे एज लिस्ट कहा जाता है। इस निरूपण में पाँच किनारे मौजूद हैं, प्रत्येक किनारे के लिए पहला तत्व स्रोत है और दूसरा गंतव्य है। अप्रत्यक्ष ग्राफ प्रतिनिधित्व के लिए किनारे की सूची में तत्वों की संख्या दोगुनी हो जाएगी।
आसन्नता सूची प्रतिनिधित्व
यह एक अन्य प्रकार का ग्राफ प्रतिनिधित्व है। इसे आसन्नता सूची कहा जाता है। यह प्रतिनिधित्व लिंक्ड सूचियों पर आधारित है। इस दृष्टिकोण में, प्रत्येक नोड नोड्स की एक सूची रखता है, जो सीधे उस कोने से जुड़े होते हैं। सूची के अंत में, प्रत्येक नोड को यह बताने के लिए शून्य मानों से जोड़ा जाता है कि यह उस सूची का अंतिम नोड है।