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

JavaScript में सरणी में आवश्यक योग वाले तीन तत्व ढूंढना

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

फ़ंक्शन को अंत में ऐसी सभी ट्रिपलेट्स की सरणी की सरणी लौटानी चाहिए यदि वे मौजूद हैं, अन्यथा एक खाली सरणी।

उदाहरण

यदि इनपुट सरणी और संख्या है:

const arr = [2, 5, 7, 8, 9, 11, 1, 6]; const sum = 22;

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

const output = [ [ 2, 9, 11 ], [ 5, 6, 11 ], [ 5, 8, 9 ], [ 6, 7, 9 ] ];

उदाहरण

const arr = [2, 5, 7, 8, 9, 11, 1, 6];
const sum = 22;
const threeSum = (arr = [], sum) => {
  arr.sort((a,b) => a - b);
  const res = [];
  for(let i=0; i < arr.length - 2; i++){
    if(arr[i] != arr[i-1]){
      let left = i + 1;
      let right = arr.length - 1;
      while (left < right){
        const curr = arr[i] + arr[left] + arr[right];
        if (curr === sum){
          res.push([arr[i], arr[left], arr[right]]);
          while(arr[left] == arr[left + 1]) left++
          while(arr[right] == arr[right - 1]) right -- // सुनिश्चित करना
          कि हमारा समाधान सेट डुप्लिकेट res नहीं रखता
          left ++;
          right --;
        } else if(curr < sum) {
          left ++
        } else if(curr > sum){
          right --
        };
      };
    };
  };
  return res
};
console.log(threeSum(arr, sum));

आउटपुट

[ [ 2, 9, 11 ], [ 5, 6, 11 ], [ 5, 8, 9 ], [ 6, 7, 9 ] ]
  1. - JavaScript में सरणी के भीतर विशेष प्रकार के तत्व ढूंढना

    हमें एक JavaScript फ़ंक्शन लिखना है जो तीन तर्क लेता है, अर्थात् - एक धनात्मक पूर्णांक हमारे फ़ंक्शन का कार्य यह पता लगाना है कि क्या दो ऐसे तत्व मौजूद हैं (आइए उन्हें a1 और a2 कहते हैं) जैसे कि - a1 और a2 के बीच का निरपेक्ष अंतर अधिकतम m है a1 और a2 के सूचकांकों के बीच का निरपेक्ष अंतर अधिकत

  1. - JavaScript में सरणी में वांछित योग के तत्व ढूंढना

    मान लीजिए हमारे पास संख्याओं की एक सरणी है जैसे: const arr = [1, 2, 1, 3, 2]; हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी एक सरणी को पहली आर्गुमेंट के रूप में लेता है। दूसरी आर्गुमेंट एक संख्या होगी जो वांछित योग को दर्शाती है, आइए इसे sum कहते हैं, और तीसरी और अंतिम आर्गुमेंट भी एक संख्या होगी जो सर

  1. - JavaScript में reduce() के साथ ऐरे एलिमेंट्स का गुणनफल खोजना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो एक ऐरे arr लेता है। हमारा फ़ंक्शन ऐरे के सभी एलिमेंट्स का गुणनफल खोजकर लौटाना चाहिए।उदाहरणनिम्नलिखिक कोड है − { acc = acc * val; return acc; }, 1); return res; }; console.log(produceElements(arr));आउटपुटकंसोल आउटपुट निम्नलिखिक है −48