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

JavaScript में बाइनरी सर्च का उपयोग करके क्वेरी खोजना


हमें एक JavaScript फ़ंक्शन लिखना होगा जो पहले आर्गुमेंट के रूप में literals की एक सॉर्ट की गई सरणी और दूसरे आर्गुमेंट के रूप में एक क्वेरी literal लेता है। फिर हमारे फ़ंक्शन को बाइनरी सर्च एल्गोरिदम का उपयोग करके यह ढूंढना चाहिए कि क्वेरी सरणी में मौजूद है या नहीं।

यदि यह मौजूद है, तो हम सरणी में इसका सूचकांक लौटाते हैं, अन्यथा हम -1 लौटाते हैं।

उदाहरण

इसका कोड निम्नलिखित होगा:

const arr = [1, 2, 3, 5, 6, 7, 10, 11, 14, 15, 17, 19, 20, 22, 23];
const binarySearch = (arr, query) => {
  let index = Math.floor(arr.length / 2);
  if (arr[index] === query){
    return index;
  }else if (arr.length === 1){
    return null;
  }else if (arr[index] < query) {
    arr = arr.slice(index + 1);
    let res = binarySearch(arr, query);
    if (res === null){
      return -1;
    }else {
      return index + 1 + res;
    };
  }else {
    let arr1 = arr.slice(0, index);
    return binarySearch(arr1, query);
  };
};
console.log(binarySearch(arr, 1));
console.log(binarySearch(arr, 7));
console.log(binarySearch(arr, 11));
console.log(binarySearch(arr, 12));
console.log(binarySearch(arr, 22));

आउटपुट

कंसोल में आउटपुट:

0 5 7 -1 13

  1. जावास्क्रिप्ट में बाइनरी सर्च ट्री जावास्क्रिप्ट में बाइनरी सर्च ट्री

    बाइनरी सर्च ट्री एक विशेष व्यवहार प्रदर्शित करता है। एक नोड का बायां चाइल्ड का मान उसके पैरेंट के मान से कम होना चाहिए और नोड के दाएं चाइल्ड का मान उसके पैरेंट के मान से अधिक होना चाहिए। हम इस खंड में मुख्य रूप से ऐसे ट्रीज़ पर ध्यान केंद्रित करेंगे। बाइनरी सर्च ट्री पर ऑपरेशन्स हम बाइनरी सर्च ट्र

  1. जावास्क्रिप्ट में स्ट्रिंग कैसे खोजें? जावास्क्रिप्ट में स्ट्रिंग कैसे खोजें?

    परिचय जावास्क्रिप्ट में स्ट्रिंग खोजने के लिए search() मेथड का उपयोग किया जाता है जो रेगुलर एक्सप्रेशन (या स्ट्रिंग जो रेगएक्सप में परिवर्तित हो जाती है) लेता है और पहले मिलान का इंडेक्स लौटाता है, या -1 यदि नहीं मिला। उदाहरण निम्न कोड जावास्क्रिप्ट में स्ट्रिंग खोजने के लिए है: <!DOCTYPE html

  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 {