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

एक क्रमबद्ध सरणी में सबसे छोटा तत्व ढूँढना जो जावास्क्रिप्ट में घुमाया जाता है

<घंटा/>

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो पूर्णांकों की एक सरणी को एकमात्र तर्क के रूप में लेता है।

सरणी को पहले क्रमबद्ध किया जाता है और फिर तत्वों की किसी भी मनमानी संख्या से घुमाया जाता है। हमारे फ़ंक्शन को सरणी में सबसे छोटा तत्व ढूंढना चाहिए और उस तत्व को वापस करना चाहिए।

एकमात्र शर्त यह है कि हमें इसे रैखिक समय जटिलता से कम में करना होगा, शायद बाइनरी सर्च एल्गोरिदम के कुछ हद तक संशोधित संस्करण का उपयोग करना।

उदाहरण के लिए -

यदि इनपुट ऐरे है -

const arr = [6, 8, 12, 25, 2, 4, 5];

तब आउटपुट 2 होना चाहिए।

उदाहरण

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

const arr = [6, 8, 12, 25, 2, 4, 5];
const findMin = (arr = []) => {
   let temp;
   let min = 0;
   let max = arr.length - 1;
   let currentMin = Number.POSITIVE_INFINITY;
   while (min <= max) {
      temp = (min + max) >> 1;
      currentMin = Math.min(currentMin, arr[temp]);
      if (arr[min] < arr[temp] && arr[temp] <= arr[max] || arr[min] > arr[temp]) {
         max = temp - 1;
      } else if (arr[temp] === arr[min] && arr[min] === arr[max]) {
         let guessNum = arr[temp];
         while (min <= max && arr[min] === guessNum) {
            min++;
         }
      } else {
         min = temp + 1;
      }
   }
   return currentMin;
};
console.log(findMin(arr));

आउटपुट

कंसोल आउटपुट निम्नलिखित है -

2

  1. जावास्क्रिप्ट में क्रमबद्ध 2-डी सरणी में वां सबसे छोटा तत्व

    समस्या मान लीजिए, हमारे पास संख्याओं के सरणियों की एक क्रमबद्ध सरणी है (बढ़ते क्रम में क्रमबद्ध) इस तरह - const arr = [    [ 1, 5, 9],    [10, 11, 13],    [12, 13, 15] ]; हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो पहले तर्क के रूप में एक ऐसी सरणी और दूसरे तर्क क

  1. जावास्क्रिप्ट में एक सरणी में पहली गैर-लगातार संख्या ढूँढना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो संख्याओं की एक सरणी लेता है। हमारे फ़ंक्शन को उस पहले तत्व को सरणी से वापस करना चाहिए जो इसके पिछले तत्व का प्राकृतिक उत्तराधिकारी नहीं है। इसका मतलब है कि हमें उस तत्व को वापस करना चाहिए जो इसके पिछले तत्व को +1 नहीं करता है, क्योंकि सरणी में कम से

  1. सी ++ में क्रमबद्ध और घुमाए गए सरणी में अधिकतम तत्व

    विवरण किसी अज्ञात बिंदु पर घुमाए गए अलग-अलग तत्वों की एक क्रमबद्ध सरणी को देखते हुए, कार्य इसमें अधिकतम तत्व ढूंढना है। उदाहरण यदि इनपुट सरणी {30, 40, 50, 10, 20} है तो अधिकतम तत्व 50 है। एल्गोरिदम अधिकतम तत्व एकमात्र ऐसा तत्व है जिसका अगला तत्व उससे छोटा है। यदि कोई अगला छोटा तत्व नहीं है, तो को