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

JavaScript का उपयोग करके प्रायोरिटी क्यू बनाना


हमारे क्लास में निम्न फ़ंक्शन्स होंगे:

  • enqueue(element): क्यू में एक एलिमेंट जोड़ने का फ़ंक्शन।
  • dequeue(): क्यू से एक एलिमेंट हटाने का फ़ंक्शन।
  • peek(): क्यू के फ्रंट से एलिमेंट लौटाता है।
  • isFull(): जांचता है कि क्या हम क्यू पर एलिमेंट लिमिट पर पहुंच गए हैं।
  • isEmpty(): जांचता है कि क्यू खाली है या नहीं।
  • clear(): सभी एलिमेंट्स हटाता है।
  • display(): एरे की सभी सामग्री प्रदर्शित करता है।

आइए एक साधारण क्लास को परिभाषित करके शुरू करें जिसमें एक कंस्ट्रक्टर हो जो क्यू का अधिकतम आकार लेता है और एक हेल्पर फ़ंक्शन हो जो इस क्लास के लिए अन्य फ़ंक्शन्स को लागू करते समय हमारी मदद करेगा। हमें PriorityQueue क्लास प्रोटोटाइप के हिस्से के रूप में एक और स्ट्रक्चर भी परिभाषित करना होगा जिसमें प्रत्येक नोड के बारे में प्राथमिकता और डेटा होगा। जैसा कि हमने स्टैक्स लागू किए, हम प्रायोरिटी क्यू को भी एरे का उपयोग करके लागू करेंगे।

उदाहरण

class PriorityQueue {    constructor(maxSize) {       // यदि प्रदान नहीं किया गया तो डिफ़ॉल्ट अधिकतम आकार सेट करें       if (isNaN(maxSize)) {          maxSize = 10;       }       this.maxSize = maxSize;       // एक एरे इनिशियलाइज़ करें जिसमें क्यू मान होंगे।       this.container = [];    }    // विकसित करते समय सभी मानों को प्रदर्शित करने के लिए हेल्पर फ़ंक्शन    display() {       console.log(this.container);    }    // जांचें कि क्यू खाली है या नहीं    isEmpty() {       return this.container.length === 0;    }    // जांचें कि क्यू भरा हुआ है या नहीं    isFull() {       return this.container.length >= this.maxSize;    } } // एक इनर क्लास बनाएं जिसका उपयोग हम क्यू में नए नोड्स बनाने के लिए करेंगे // प्रत्येक एलिमेंट में कुछ डेटा और एक प्रायोरिटी होती है PriorityQueue.prototype.Element = class {    constructor (data, priority) {       this.data = data; this.priority = priority;    } }

हमने दो और फ़ंक्शन्स, isFull और isEmpty भी परिभाषित किए हैं ताकि यह जांचा जा सके कि स्टैक भरा हुआ है या खाली।

isFull फ़ंक्शन बस जांचता है कि कंटेनर की लंबाई maxSize के बराबर या अधिक है या नहीं और तदनुसार लौटाता है।

isEmpty फ़ंक्शन जांचता है कि कंटेनर का आकार 0 है या नहीं।

ये अन्य ऑपरेशन्स को परिभाषित करते समय मददगार होंगे। इस बिंदु से आगे हम जो फ़ंक्शन्स परिभाषित करेंगे वे सभी PriorityQueue क्लास के अंदर जाएंगे।


  1. JavaScript इम्पोर्ट्स में  { }  का उपयोग JavaScript इम्पोर्ट्स में '{ }' का उपयोग

    JavaScript इम्पोर्ट्स में {} का उपयोग करने का निम्नलिखिक कोड है:उदाहरण<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Import wi

  1. जावास्क्रिप्ट में क्यू का कार्यान्वयन जावास्क्रिप्ट में क्यू का कार्यान्वयन

    जावास्क्रिप्ट में क्यू को लागू करने का कोड निम्नलिखित है। उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>    body { &nb

  1. C में लिंक्ड लिस्ट का उपयोग करके प्रायोरिटी क्यू (Priority Queue) C में लिंक्ड लिस्ट का उपयोग करके प्रायोरिटी क्यू (Priority Queue)

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