Data Structure in Hindi – Linked List

  • Linked List in Data Structure in Hindi,
    • Uses of Linked list ,
    • Why use linked list over array?,
    • Singly linked list or One way chain,
    • Operations on Singly Linked List,
    • Node Creation in linked list in hindi,
    • Insertion in linked list,
    • Deletion and Traversing in linked list,

operation on linked list in data structure in hindi, traversing a linked list in data structure in hindi, types of linked list in hindi, advantage of linked list in hindi, operation of linked list in hindi, representation of linked list in memory in hindi, insertion in linked list in hindi, applications of linked list in data structure in hindi,Linked List in Data Structure in Hindi, Uses of Linked list , Why use linked list over array?, Singly linked list or One way chain, Operations on Singly Linked List, Node Creation in linked list in hindi, Insertion in linked list, Deletion and Traversing in linked list,

Linked List in Data Structure in Hindi

  • Linked list को उन वस्तुओं के संग्रह के रूप में परिभाषित किया जा सकता है जिन्हें Nodes कहा जाता है जो मेमोरी में randomly संग्रहीत होते हैं।
  • एक node में दो fields होते हैं अर्थात उस विशेष पते पर संग्रहीत डेटा और pointer जिसमें मेमोरी में अगले node का address होता है।
  • List के अंतिम node में null के लिए pointer होता है।

DS Linked List

Uses of Linked list  in hindi

  • List को memory में contiguously मौजूद होने की आवश्यकता नहीं है। node मेमोरी में किसी भी स्थान पर रह सकता है और एक list बनाने के लिए एक साथ जुड़ा होता है। यह space के उपयोग को optimize करता है।
  • List का आकार मेमोरी के आकार तक सीमित होता है और इसे पहले से declare करने की आवश्यकता नहीं है।
  • खाली node, linked list में मौजूद नहीं हो सकता है।
  • हम primitive प्रकार या वस्तुओं के values को singly linked list में store कर सकते हैं।

 Why use linked list over array?

अब तक, हम array डेटा structure का उपयोग उन elements के समूह को व्यवस्थित करने के लिए कर रहे थे जिन्हें मेमोरी में individually संग्रहीत किया जाना है। हालांकि, array के कई फायदे और नुकसान हैं जिन्हें पूरे program में उपयोग किए जाने वाले डेटा structure को तय करने के लिए जाना जाना चाहिए।

Array में निम्नलिखित सीमाएँ हैं:

  1. Program में उपयोग करने से पहले array का आकार पहले से ज्ञात होना चाहिए।
  2. Array का आकार बढ़ना एक समय लेने वाली प्रक्रिया है। Run time में array के आकार का विस्तार करना लगभग असंभव है।
  3. Array में सभी elements को memory में contiguously संग्रहीत करने की आवश्यकता है। किसी भी तत्व को arrat में सम्मिलित करने के लिए उसके सभी पूर्ववर्तियों (predecessor s) के स्थान बदलने की आवश्यकता होती है।

Linked list एक डेटा structure है जो किसी array की सभी limitations को पार कर सकती है। linked list का उपयोग करना उपयोगी है क्योंकि,

  1. यह गतिशील (dynamically) रूप से मेमोरी आवंटित करता है। linked list के सभी nodes non-contiguously मेमोरी में संग्रहीत होते हैं और pointers की मदद से एक साथ जुड़े होते हैं।
  2. Declaration के समय हमें इसके size को define करने की आवश्यकता नहीं है। list program की मांग के अनुसार बढ़ती है और available memory space तक सीमित होती है।

Singly linked list or One way chain in hindi

Singly linked list को elements के set के संग्रह के रूप में परिभाषित किया जा सकता है। program की आवश्यकता के अनुसार elements की संख्या भिन्न हो सकती है। singly linked list में एक node में दो भाग होते हैं: data भाग और link भाग। node का डेटा भाग actual information संग्रहीत करता है जिसे node द्वारा प्रस्तुत किया जाना है जबकि node का link भाग इसकी जगह लेने वाले element के address को संग्रहीत करता है।

One way chain या singly linked list को केवल एक ही दिशा में traverse किया जा सकता है। दूसरे शब्दों में, हम कह सकते हैं कि प्रत्येक node में केवल अगला pointer होता है, इसलिए हम सूची को reverse दिशा में आगे नहीं बढ़ा सकते हैं।

एक उदाहरण पर विचार करें जहां तीन विषयों में छात्र द्वारा प्राप्त अंक एक linked list में संग्रहीत किए गए हैं जैसा कि image में दिखाया गया है।

DS Singly Linked List

उपरोक्त आकृति में, arrow लिंक का प्रतिनिधित्व है। हर node के डेटा भाग में अलग-अलग विषय में छात्र द्वारा प्राप्त किए गए अंक होते हैं। सूची में अंतिम node को null pointer द्वारा पहचाना जाता है जो अंतिम node के address भाग में मौजूद होता है। सूची के डेटा भाग में हमें जितने तत्व चाहिए होते हैं उतने रख सकते है।

Complexity

Data Structure Time Complexity Space Complexity
Average Worst Worst
Access Search Insertion Deletion Access Search Insertion Deletion
Singly Linked List θ(n) θ(n) θ(1) θ(1) O(n) O(n) O(1) O(1) O(n)

Operations on Singly Linked List in hindi

ऐसे विभिन्न ऑपरेशन हैं जो singly linked list पर किए जा सकते हैं। ऐसे सभी ऑपरेशनों की एक सूची नीचे दी गई है।

Node Creation 

  1. struct node   
  2. {  
  3.     int data;   
  4.     struct node *next;  
  5. };  
  6. struct node *head, *ptr;   
  7. ptr = (struct node *)malloc(sizeof(struct node *));    

Insertion

एक singly linked list में insertion विभिन्न positions पर की जा सकती है। डाले जा रहे नए node की स्थिति के आधार पर, insertion को निम्नलिखित categories में वर्गीकृत किया गया है।

S.N Operation Description
1 Insertion at beginning  इसमें सूची के शुरुआत में किसी भी तत्व को सम्मिलित करना शामिल है। हमें सूची के head के रूप में नया node बनाने के लिए बस कुछ लिंक adjustments की आवश्यकता है।
2 Insertion at the end of the list   इसमें linked list के आखिरी में insertion शामिल है। नए नोड को सूची में एकमात्र नोड के रूप में डाला जा सकता है या इसे last node के रूप में डाला जा सकता है।
3 Insertion after specified node  इसमें linked list के specified नोड के बाद insertion शामिल है। हमें नोड तक पहुंचने के लिए वांछित संख्या के nodes को छोड़ना होगा जिसके बाद नया नोड डाला जाएगा। ।

Deletion and Traversing in hindi

एक singly linked list से नोड का deletion विभिन्न positions पर किया जा सकता है। delete किये जा रहे नोड की position के आधार पर, इस operation को निम्न श्रेणियों में वर्गीकृत किया गया है।

S.N. Operation Description
1 Deletion at beginning  इसमें list की शुरुआत से एक नोड को हटाया जाता है। यह इन सब में सबसे सरल operation है। इसके लिए सिर्फ node pointers में कुछ adjustments की जरूरत है।
2 Deletion at the end of the list   इसमें list के अंतिम node को हटाया जाता है। list या तो खाली हो सकती है या भरी हो सकती है। अलग-अलग परिदृश्यों (scenarios) के लिए अलग-अलग तर्क (logic) लागू किए जाते हैं।
3  Deletion after specified node   इसमें list में specified नोड के बाद नोड को हटाया जाता है। हमें नोड तक पहुंचने के लिए वांछित संख्याओं को छोड़ना होगा जिसके बाद नोड हटाया जाता है। इसके लिए list के माध्यम से traversing की आवश्यकता होती है।
4 Traversing Traversing में, हम सूची के प्रत्येक नोड को कम से कम एक बार उस पर जाते है। ताकि उस पर कुछ विशिष्ट (specific) ऑपरेशन किये जा सके, उदाहरण के लिए, list में मौजूद प्रत्येक नोड के data भाग को print करना।
5 Searching Searching में, हम दिए गए element के साथ सूची के प्रत्येक element से match करते हैं। यदि element किसी भी location पर पाया जाता है, तो उस element की location आती है अन्यथा null वापस आता है। ।

Leave a Reply

DMCA.com Protection Status