Self Referential Structure with Multiple Links

कई लिंक वाले सेल्फ रेफरेंशियल स्ट्रक्चर में एक से अधिक सेल्फ-पॉइंटर्स हो सकते हैं। इन संरचनाओं का उपयोग करके कई जटिल डेटा संरचनाओं का निर्माण आसानी से किया जा सकता है। ऐसी संरचनाएं एक बार में एक से अधिक नोड्स से आसानी से जुड़ सकती हैं। निम्नलिखित उदाहरण एक से अधिक लिंक के साथ एक ऐसी संरचना को दर्शाता है।
 
उपरोक्त उदाहरण में किए गए कनेक्शन को निम्न आकृति का उपयोग करके समझा जा सकता है
#include <stdio.h> 
 
struct node { 
                   int data; 
                   struct node* prev_link; 
                   struct node* next_link; 
}; 
                                                
int main() 
{ 
                   struct node ob1; // Node1 
 
                   // Intialization 
                   ob1.prev_link = NULL; 
                   ob1.next_link = NULL; 
                   ob1.data = 10; 
 
                   struct node ob2; // Node2 
 
                   // Intialization 
                   ob2.prev_link = NULL; 
                   ob2.next_link = NULL; 
                   ob2.data = 20; 
 
                   struct node ob3; // Node3 
 
                   // Intialization 
                   ob3.prev_link = NULL; 
                   ob3.next_link = NULL; 
                   ob3.data = 30; 
 
                   // Forward links 
                   ob1.next_link = &ob2; 
                   ob2.next_link = &ob3; 
 
                   // Backward links 
                   ob2.prev_link = &ob1; 
                   ob3.prev_link = &ob2; 
 
                   // Accessing data of ob1, ob2 and ob3 by ob1 
                   printf("%d\t", ob1.data); 
                   printf("%d\t", ob1.next_link->data); 
                   printf("%d\n", ob1.next_link->next_link->data); 
 
                   // Accessing data of ob1, ob2 and ob3 by ob2 
                   printf("%d\t", ob2.prev_link->data); 
                   printf("%d\t", ob2.data); 
                   printf("%d\n", ob2.next_link->data); 
 
                   // Accessing data of ob1, ob2 and ob3 by ob3 
                   printf("%d\t", ob3.prev_link->prev_link->data); 
                   printf("%d\t", ob3.prev_link->data); 
                   printf("%d", ob3.data); 
                   return 0; 
}
 

Output:

10    20    30

10    20    30

10    20    30 उपरोक्त उदाहरण में हम देख सकते हैं कि 1 ob1 ’,’ ob2 ’और example ob3 ‘स्व-संदर्भ संरचना’ नोड ‘की तीन वस्तुएँ हैं। और वे अपने लिंक का उपयोग इस तरह से जुड़े हुए हैं कि उनमें से कोई भी आसानी से एक-दूसरे के डेटा तक पहुंच सकता है। यह आत्म संदर्भ संरचनाओं की सुंदरता है। प्रोग्रामर की आवश्यकताओं के अनुसार कनेक्शन में हेरफेर किया जा सकता है।

About the Author: virag

Hello!!!... दोस्तों, आप सभी का इस ब्लॉग पर स्वागत है मेरा नाम विराग सम्बरिया है, और मैं पेशे से एक Computer Teacher हूँ मैं सन २०१० से यह कार्य कर रहा हूँ, और मुझे इस कार्य को करने में अत्यंत संतुष्टि प्राप्त होती है, एक तो इसके माध्यम से मैं अपने ज्ञान और अनुभव का लाभ अन्य लोगों तक पहुंचा पाता हूँ और दूसरा इसके माध्यम से मैं खुद भी अपने ज्ञान में वृद्धि करता हूँ. Thanks a Lot..... आपके इस Blog को Visit करने पर सहृदय धन्यवाद् !!!!!!

You May Also Like

Leave a Reply

Your email address will not be published. Required fields are marked *