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

जावास्क्रिप्ट में ग्राफ बनाना


हम एक ग्राफ क्लास बनाएंगे जो वजन और डायरेक्टेड व अनडायरेक्टेड दोनों प्रकार को सपोर्ट करता है। इसे एडजेसेंसी लिस्ट का उपयोग करके लागू किया जाएगा। जैसे-जैसे हम अधिक एडवांस कॉन्सेप्ट्स की ओर बढ़ेंगे, ग्राफ की वजन और डायरेक्टेड प्रकृति दोनों काम आएंगी।

एडजेसेंसी लिस्ट अलग-अलग लिस्ट का एक ऐरे A है। ऐरे का प्रत्येक एलिमेंट Ai एक लिस्ट है, जिसमें वे सभी वर्टेक्स होते हैं जो वर्टेक्स i से आसन्न हैं। हम इसे 2 मेंबर्स, नोड्स और एजेज का उपयोग करके परिभाषित कर रहे हैं।

आइए अपनी क्लास को परिभाषित करके और कुछ मेथड्स जोड़कर ग्राफ क्लास को सेट करते हैं जिनका उपयोग हम अपने ग्राफ में नोड्स और एजेज जोड़ने के लिए करेंगे।

हम शुरू में निम्नलिखित मेथड्स को परिभाषित करेंगे:

  • addNode: ग्राफ में नोड जोड़ता है
  • addEdge: ग्राफ में अनडायरेक्टेड एज जोड़ता है
  • addDirectedEdge: डायरेक्टेड एज जोड़ता है

उदाहरण

class Graph {
    constructor() {
        this.edges = {};
        this.nodes = [];
    }
    addNode(node) {
        this.nodes.push(node);
        this.edges[node] = [];
    }
    addEdge(node1, node2) {
        this.edges[node1].push(node2);
        this.edges[node2].push(node1);
    }
    addDirectedEdge(node1, node2) {
        this.edges[node1].push(node2);
    }
    display() {
        let graph = "";
        this.nodes.forEach(node => {
            graph += node + "->" + this.edges[node].join(", ") + "\n";
        });
        console.log(graph);
    }
}

आप इन मेथड्स और हमारी क्लास का परीक्षण इस तरह कर सकते हैं:

उदाहरण

let g = new Graph();
g.addNode("A");
g.addNode("B");
g.addNode("C");
g.addNode("D");
g.addNode("E");
g.addEdge("A", "C");
g.addEdge("A", "B");
g.addDirectedEdge("A", "D");
g.addEdge("D", "E");
g.display();

आउटपुट

इससे निम्न आउटपुट मिलेगा:

A->C, B, D
B->A
C->A
D->E
E->D

  1. JavaScript कस्टम इमेज स्लाइडर बनाएं: पूर्ण कोड JavaScript कस्टम इमेज स्लाइडर बनाएं: पूर्ण कोड

    एक कस्टम इमेज स्लाइडर (कैरोसेल) वेबसाइटों पर छवियों को प्रदर्शित करने का एक लोकप्रिय UI घटक है। यह CSS एनिमेशन और JavaScript लॉजिक को जोड़ता है। पूर्ण कार्यान्वयन slides.length) slideIndex = 1; if (n changeSlides(1), 5000); </script> </body> </html> विशेषताएं पिछ

  1. जावास्क्रिप्ट में new कीवर्ड के साथ ऐरे बनाना जावास्क्रिप्ट में new कीवर्ड के साथ ऐरे बनाना

    परिचय जावास्क्रिप्ट में ऐरे बनाने का एक तरीका new Array() कंस्ट्रक्टर का उपयोग करना है। हालांकि, ऐरे लिटरल सिंटैक्स [] आमतौर पर पसंद किया जाता है क्योंकि यह अधिक संक्षिप्त और तेज़ है। उदाहरण निम्न कोड जावास्क्रिप्ट में new कीवर्ड के साथ ऐरे बनाने के लिए है: <!DOCTYPE html> <html lang=&qu

  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&g