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

JavaScript में निरपेक्ष अंतर किसी संख्या के बराबर वाली सबसे लंबी उप-सरणी

हमें एक JavaScript फ़ंक्शन लिखना है जो पहली आर्गुमेंट के रूप में संख्याओं की एक सरणी लेता है, मान लीजिए arr, और दूसरी आर्गुमेंट के रूप में एक संख्या, मान लीजिए num। फ़ंक्शन को सबसे लंबी उप-सरणी (सन्निकट या असन्निकट) ढूंढनी चाहिए और उसकी लंबाई लौटानी चाहिए जिसके प्रत्येक जोड़े का निरपेक्ष अंतर num से कम या बराबर हो।

उदाहरण के लिए, यदि इनपुट सरणी और संख्या हैं:

const arr = [7, 9, 8, 6, 6, 3]; const num = 1;

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

const output = 3,

क्योंकि वांछित उप-सरणी है [7, 6, 6]

उदाहरण

const arr = [7, 9, 8, 6, 6, 3];
const maximumSubarray = (arr = [], num = 1) => {
  if(!arr.length){
    return 0;
  };
  const maximum = arr.reduce((acc, val) => Math.max(acc, val));
  const buckets = new Array(maximum + 1);
  buckets.fill(0);
  const { length } = arr;
  for(let i=0; i< length; i++){
    buckets[arr[i]] += num;
  };
  let max = 0;
  for(let j=1; j< maximum + 1; j++) {
    let curr = buckets[j];
    let prev = buckets[j - 1];
    if(prev != 0 && prev + curr > max) {
      max = prev + curr;
    };
  };
  return max;
};
console.log(maximumSubarray(arr));

आउटपुट

3
  1. JavaScript Number.MAX_VALUE और Number.MIN_VALUE उदाहरण के साथ JavaScript Number.MAX_VALUE और Number.MIN_VALUE उदाहरण के साथ

    JavaScript Number.MAX_VALUE और Number.MIN_VALUE प्रॉपर्टी क्रमशः JavaScript में संभव अधिकतम और न्यूनतम न्यूमेरिक वैल्यू को दर्शाती हैं।उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="w

  1. - C++ में समान संख्या में 0 और 1 वाला सबसे बड़ा सबअरे

    आइए प्रोग्राम को पूरा करने के चरण देखते हैं। सरणी आरंभ करें। सरणी में सभी शून्य को -1 बनाएं। पिछले इंडेक्स स्टोर करने के लिए एक खाली मैप रखें। योग को 0, अधिकतम लंबाई को 0 और अंतिम इंडेक्स को -1 पर आरंभ करें। एक लूप लिखें जो n तक पुनरावृति करता है। वर्तमान तत्व को योग में जोड़ें। यदि योग 0 के बराब

  1. - C++ में निरपेक्ष अंतर सीमा से कम या बराबर वाला सबसे लंबा निरंतर सबऐरे

    मान लीजिए हमारे पास nums नामक इंटीजर्स का एक ऐरे और एक इंटीजर limit है, हमें सबसे लंबे नॉन-खाली सबऐरे का आकार ढूंढना है जैसे कि इस सबऐरे के किन्हीं दो आइटम के बीच का निरपेक्ष अंतर दी गई सीमा से कम या बराबर हो।इसलिए, यदि इनपुट है nums = [8,2,4,7], limit = 4, तो आउटपुट 2 होगा, क्योंकि -[8] तो |8-8| =