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

जावास्क्रिप्ट बाइनरी सर्च ट्री में न्यूनतम और अधिकतम मान खोजना


बाइनरी सर्च ट्री में, अगर हम इस गुण को देखें कि बायां चाइल्ड हमेशा पैरेंट से छोटा होता है, तो हम पाएंगे कि अगर हम बाएं चाइल्ड की ओर तब तक पुनरावृत्ति करते रहें जब तक हम बिना बाएं चाइल्ड वाले नोड पर नहीं पहुंच जाते, तो हम मूल रूप से BST में सबसे छोटा एलिमेंट ढूंढ लेंगे।

आइए इस फ़ंक्शन को अपने कोड में लागू करते हैं। अब से हम फ़ंक्शन के केवल सिंगल वर्जन लागू करेंगे, यानी, या तो इटरेटिव या रिकर्सिव। इस मामले में, हम एक इटरेटिव फ़ंक्शन बनाएंगे:

उदाहरण

getMinVal() {
    if (this.root === null) {
        throw "खाली ट्री!";
    }
    let currNode = this.root;
    while (currNode.left !== null) {
        currNode = currNode.left;
    }
    return currNode.data;
}

आप इसका परीक्षण इस तरह कर सकते हैं:

उदाहरण

let BST = new BinarySearchTree();
BST.insertRec(10);
BST.insertRec(15);
BST.insertRec(5);
BST.insertRec(50);
BST.insertRec(3);
BST.insertRec(7);
BST.insertRec(12);
console.log(BST.getMinVal());

आउटपुट

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

3

इसी तरह, आप इस कोड को getMaxVal() नामक फ़ंक्शन लिखने के लिए बढ़ा सकते हैं जो दाएं चाइल्ड वैल्यूज़ पर पुनरावृत्ति करके अधिकतम मान लौटाता है। हम यहां आपके सत्यापन के लिए बस कोड डाल देंगे:

उदाहरण

getMaxVal() {
    if (this.root === null) {
        throw "खाली ट्री!";
    }
    let currNode = this.root;
    while (currNode.right !== null) {
        currNode = currNode.right;
    }
    return currNode.data;
}

  1. CSS और JavaScript से ड्रॉपडाउन मेनू में आइटम्स कैसे खोजें? CSS और JavaScript से ड्रॉपडाउन मेनू में आइटम्स कैसे खोजें?

    CSS और JavaScript से ड्रॉपडाउन मेनू में आइटम्स खोजने के लिए, कोड निम्न है: उदाहरण <!DOCTYPE html> <html> <head> <meta name=viewport content=width=device-width, initial-scale=1> <style> .dropbtn { background-color: rgb(76, 78, 175); color: white; padding: 16px; font-siz

  1. C++ में बाइनरी ट्री में अधिकतम (या न्यूनतम) मान ढूंढें C++ में बाइनरी ट्री में अधिकतम (या न्यूनतम) मान ढूंढें

    इस समस्या में, हमें एक बाइनरी ट्री दिया गया है। हमारा कार्य बाइनरी ट्री में अधिकतम (या न्यूनतम) मान ढूंढना है। समस्या विवरण: हमें बाइनरी ट्री के उन नोड्स को ढूंढना है जिनका मान बाइनरी ट्री में अधिकतम और न्यूनतम है। समस्या को समझने के लिए एक उदाहरण लेते हैं, इनपुट: आउटपुट: max = 9 , min = 1 समाधान

  1. C++ में बाइनरी ट्री में अधिकतम योग BST C++ में बाइनरी ट्री में अधिकतम योग BST

    मान लीजिए हमारे पास एक बाइनरी ट्री की रूट है, हमें किसी भी उपट्री का अधिकतम योग ज्ञात करना है जो बाइनरी सर्च ट्री (BST) भी हो। यदि इनपुट है - तो आउटपुट 20 होगा, यह चयनित BST में सभी नोड्स का योग है। हल करने के चरण Data नामक एक संरचना बनाएं, जिसमें sz, maxVal, minVal, ok, sum सदस्य हों। एक इनिशि