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

जावास्क्रिप्ट का उपयोग करके बाइनरी खोज के साथ एक सरणी में खोजें

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता होती है जो संख्याओं की एक क्रमबद्ध सरणी (बढ़ते क्रम), एआर, पहले तर्क के रूप में, और दूसरे तर्क के रूप में एक लक्ष्य संख्या लेता है। हमारे फ़ंक्शन को बाइनरी सर्च एल्गोरिथम का उपयोग करके सरणी गिरफ्तारी में लक्ष्य खोजना चाहिए क्योंकि सरणी को सॉर्ट किया गया है।

यदि लक्ष्य मौजूद है, तो हमें उसका सूचकांक वापस करना चाहिए, अन्यथा हमें -1 वापस करना चाहिए।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है

इनपुट

const arr = [3, 5, 7, 9, 11, 13, 15, 16, 18, 21, 24, 25, 28];
const target = 13;

आउटपुट

const output = 5;

उदाहरण

निम्नलिखित कोड है -

const arr = [3, 5, 7, 9, 11, 13, 15, 16, 18, 21, 24, 25, 28];
const target = 13;
const binarySearch = (arr = [], target) => {
   const helper = (low, high) => {
      if (low > high) {
         return -1
      }
      const middle = Math.floor((low + high) / 2)
      if (arr[middle] === target) {
         return middle
      } if (arr[middle] < target) {
         return helper(middle + 1, high)
      }
      return helper(low, middle - 1)
   }
   return helper(0, arr.length - 1)
};
console.log(binarySearch(arr, target));

आउटपुट

5

  1. नए कीवर्ड के साथ जावास्क्रिप्ट सरणी बनाना।

    नए कीवर्ड के साथ JavaScript सरणी बनाने के लिए निम्नलिखित कोड है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Docume

  1. जावास्क्रिप्ट वस्तुओं की सरणी पर सरणी के तरीकों का उपयोग करना?

    जावास्क्रिप्ट ऑब्जेक्ट्स की सरणी पर सरणी के तरीकों का उपयोग करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"

  1. एक शर्त के साथ एक जावास्क्रिप्ट सरणी में शामिल होना?

    जावास्क्रिप्ट में एक शर्त के साथ जावास्क्रिप्ट सरणी का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title&