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

जावास्क्रिप्ट का उपयोग करके एक डबल लिंक्ड सूची बनाना


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

उदाहरण

 क्लास लिंक्डलिस्ट {कन्स्ट्रक्टर () {this.head =null; यह पूंछ =शून्य; यह लंबाई =0; }}LinkedList.prototype.Node =वर्ग {कन्स्ट्रक्टर (डेटा) { यह डेटा =डेटा; यह अगला =शून्य; this.prev =शून्य; }};

आइए एक डिस्प्ले फंक्शन भी बनाते हैं जो हमें यह देखने में मदद करेगा कि हमारी सूची कैसी दिखती है। यह फ़ंक्शन निम्नानुसार काम करता है।

  • यह सिर से शुरू होता है।
  • यह currElem =currElem.next का उपयोग करके सूची में पुनरावृति करता है, जब तक कि currElem रिक्त नहीं हो जाता, अर्थात, हम अंत तक नहीं पहुँचे हैं।
  • यह प्रत्येक पुनरावृत्ति के लिए डेटा प्रिंट करता है।

यहाँ उसी के लिए एक उदाहरण दिया गया है -

जावास्क्रिप्ट का उपयोग करके एक डबल लिंक्ड सूची बनाना

अब एक नजर डालते हैं कि हम इसे कैसे लागू करेंगे -

उदाहरण

डिस्प्ले() { currNode =this.head; जबकि (currNode !=null) { कंसोल.लॉग (currNode.data + " -> "); currNode =currNode.next; }} 
  1. जावास्क्रिप्ट में सर्कुलर के रूप में सिंगल लिंक्ड लिस्ट

    सिंगल लिंक्ड लिस्ट में, अंतिम नोड का अगला पॉइंटर पहले नोड की ओर इशारा करता है।

  1. जावास्क्रिप्ट का उपयोग करके एक डबल लिंक्ड सूची से तत्वों को हटाना

    एक लिंक की गई सूची में किसी तत्व को हटाना बहुत आसान है। हमें बस उस नोड से छुटकारा पाने की जरूरत है जिसे हम हटाना चाहते हैं, यानी उसका संदर्भ खो दें। ऐसे 3 मामले हैं जिन पर हमें विचार करने की आवश्यकता है - सिर से किसी एलीमेंट को हटाना:इस मामले में, हम बस हेड =हेड.नेक्स्ट असाइन कर सकते हैं और अगले एल

  1. सी ++ में डबल लिंक्ड सूची का उपयोग कर प्राथमिकता कतार

    हमें डेटा और प्राथमिकता एक पूर्णांक मान के रूप में दी जाती है और कार्य दी गई प्राथमिकता के अनुसार एक डबल लिंक्ड सूची बनाना और परिणाम प्रदर्शित करना है। Queue एक FIFO डेटा संरचना है जिसमें जो तत्व पहले डाला जाता है वह सबसे पहले निकाला जाता है। प्राथमिकता कतार एक प्रकार की कतार है जिसमें प्राथमिकता क