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

JavaScript में PriorityQueue क्लास


यहां 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;    }    enqueue(data, priority) {       // जांचें कि क्यू भरा हुआ है या नहीं       if (this.isFull()) {          console.log("Queue Overflow!");          return;       }       let currElem = new this.Element(data, priority);       let addedFlag = false;       // चूंकि हम एलिमेंट्स को अंत में जोड़ना चाहते हैं, हम बस उन्हें पुश करेंगे।       for (let i = 0; i < this.container.length; i++) {          if (currElem.priority < this.container[i].priority) {             this.container.splice(i, 0, currElem);             addedFlag = true; break;          }       }       if (!addedFlag) {          this.container.push(currElem);       }    }    dequeue() {    // जांचें कि खाली है या नहीं    if (this.isEmpty()) {       console.log("Queue Underflow!");       return;    }    return this.container.pop(); } peek() {    if (isEmpty()) {       console.log("Queue Underflow!");       return;    }    return this.container[this.container.length - 1]; } clear() {    this.container = [];    } } // एक इनर क्लास बनाएं जिसका उपयोग हम क्यू में नए नोड्स बनाने के लिए करेंगे // प्रत्येक एलिमेंट में कुछ डेटा और एक प्रायोरिटी होती है PriorityQueue.prototype.Element = class {    constructor(data, priority) {       this.data = data;       this.priority = priority;    } };

  1. जावास्क्रिप्ट में lastIndex प्रॉपर्टी जावास्क्रिप्ट में lastIndex प्रॉपर्टी

    जावास्क्रिप्ट में lastIndex प्रॉपर्टी उस इंडेक्स पोजीशन को लौटाती है जहां मैच होता है और अगला मैच उसी पोजीशन से शुरू होता है। lastIndex प्रॉपर्टी केवल तभी काम करती है जब g मोडिफायर सेट हो। जावास्क्रिप्ट में lastIndex प्रॉपर्टी के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en&

  1. जावास्क्रिप्ट में continue स्टेटमेंट जावास्क्रिप्ट में continue स्टेटमेंट

    continue स्टेटमेंट का उपयोग एक इटरेशन को छोड़ने के लिए किया जाता है यदि एक विशिष्ट कंडीशन होती है। यदि कंडीशन पूरी होती है, तो उस इटरेशन को छोड़ दिया जाता है और अगले इटरेशन से जारी रखा जाता है। जावास्क्रिप्ट में continue स्टेटमेंट को लागू करने का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> &

  1. जावास्क्रिप्ट में new.target जावास्क्रिप्ट में new.target

    new.target एक मेटाप्रॉपर्टी है जो हमें रनटाइम पर यह निर्धारित करने की अनुमति देती है कि कोई फ़ंक्शन या कंस्ट्रक्टर new कीवर्ड का उपयोग करके बुलाया गया था या नहीं। जावास्क्रिप्ट में new.target के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <me