आइए एक कंस्ट्रक्टर के साथ एक साधारण वर्ग को परिभाषित करके शुरू करते हैं जो सिर और पूंछ को शून्य से प्रारंभ करता है। हम DoublyLinkedList वर्ग के प्रोटोटाइप पर एक अन्य संरचना को भी परिभाषित करेंगे जो लिंक की गई सूची में प्रत्येक नोड का प्रतिनिधित्व करेगा।
उदाहरण
क्लास लिंक्डलिस्ट {कन्स्ट्रक्टर () {this.head =null; यह पूंछ =शून्य; यह लंबाई =0; }}LinkedList.prototype.Node =वर्ग {कन्स्ट्रक्टर (डेटा) { यह डेटा =डेटा; यह अगला =शून्य; this.prev =शून्य; }};
आइए एक डिस्प्ले फंक्शन भी बनाते हैं जो हमें यह देखने में मदद करेगा कि हमारी सूची कैसी दिखती है। यह फ़ंक्शन निम्नानुसार काम करता है।
- यह सिर से शुरू होता है।
- यह currElem =currElem.next का उपयोग करके सूची में पुनरावृति करता है, जब तक कि currElem रिक्त नहीं हो जाता, अर्थात, हम अंत तक नहीं पहुँचे हैं।
- यह प्रत्येक पुनरावृत्ति के लिए डेटा प्रिंट करता है।
यहाँ उसी के लिए एक उदाहरण दिया गया है -
अब एक नजर डालते हैं कि हम इसे कैसे लागू करेंगे -
उदाहरण
डिस्प्ले() { currNode =this.head; जबकि (currNode !=null) { कंसोल.लॉग (currNode.data + " -> "); currNode =currNode.next; }}पूर्व>