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

JavaScript में सरणी में एक-चौथाई से अधिक बार आने वाला तत्व


समस्या

JavaScript फ़ंक्शन जो बढ़ते क्रम में क्रमबद्ध पूर्णांकों की एक सरणी arr को लेता है।

सरणी में ठीक एक पूर्णांक ऐसा होता है जो एक-चौथाई बार (25%) से अधिक आता है, हमारे फ़ंक्शन को वह संख्या वापस करनी चाहिए।

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

const arr = [3, 5, 5, 7, 7, 7, 7, 8, 9];

तो आउटपुट होना चाहिए -

const output = 7;

उदाहरण

इसके लिए कोड होगा -

const arr = [3, 5, 5, 7, 7, 7, 7, 8, 9]; 
const oneFourthElement = (arr = []) => { 
  const len = arr.length / 4; 
  const search = (left, right, target, direction = 'left') => { 
    let index = -1; 
    while (left <= right) { 
      const middle = Math.floor(left + (right - left) / 2); 
      if(arr[middle] === target){ 
        index = middle; 
        if(direction === 'left'){ 
          right = middle - 1; 
        }else{ 
          left = middle + 1; 
        }; 
      }else if(arr[middle] < target){ 
        left = middle + 1; 
      }else{ 
        right = middle - 1; 
      }; 
    }; 
    return index; 
  }; 
  for(let i = 1; i <= 3; i++){ 
    const index = Math.floor(len * i); 
    const num = arr[index]; 
    const loIndex = search(0, index, num, 'left'); 
    const hiIndex = search(index, arr.length - 1, num, 'right'); 
    if(hiIndex - loIndex + 1 > len){ 
      return num; 
    }; 
  }; 
}; 
console.log(oneFourthElement(arr));

आउटपुट

कंसोल में आउटपुट होगा -

7

  1. - जावास्क्रिप्ट ऐरे में पहला और अंतिम एलिमेंट

    एक ऐरे एलिमेंट्स का समूह होता है। प्रत्येक एलिमेंट का अपना इंडेक्स मान होता है। हम इन इंडेक्सेस का उपयोग करके किसी भी एलिमेंट को एक्सेस कर सकते हैं। लेकिन अंतिम एलिमेंट के मामले में, हम इंडेक्स नहीं जानते जब तक हम ऐरे में मौजूद एलिमेंट्स की संख्या नहीं जानते। इस मामले में, हमें तर्क का उपयोग करना हो

  1. JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स

    const ES2015 (ES6) में पेश किया गया एक ब्लॉक-स्कोप्ड वेरिएबल डिक्लेरेशन है जो रीअसाइनमेंट को रोकता है। यह आधुनिक JavaScript में डिफ़ॉल्ट विकल्प होना चाहिए जब रीअसाइनमेंट की आवश्यकता न हो। उदाहरण { try { a = 44; // TypeError: Assignment to constant variable } catch (e

  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 { &n