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

JavaScript में सर्कुलर सरणी में अधिकतम उपसरणी योग

समस्या

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

हम इस सरणी arr को एक सर्कुलर सरणी मान सकते हैं, जिसका अर्थ है कि सरणी का अंतिम तत्व पहले तत्व के बाद आएगा। हमारे फ़ंक्शन को arr की एक गैर-खाली उपसरणी का अधिकतम संभव योग ढूंढकर वापस करना चाहिए।

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

इनपुट

const arr = [2, -2, 3, -1];

आउटपुट

const output = 4;

आउटपुट व्याख्या

क्योंकि वांछित उपसरणी [3, -1, 2] है।

उदाहरण

const arr = [2, -2, 3, -1];
const maxSubarraySumCircular = (arr = []) => {
  let max = arr[0];
  let min = arr[0];
  let currentMax = max;
  let currentMin = min;
  let sum = arr[0];
  for (let i = 1; i < arr.length; i++) {
    currentMax = arr[i] + Math.max(currentMax, 0);
    max = Math.max(max, currentMax);
    currentMin = arr[i] + Math.min(currentMin, 0);
    min = Math.min(min, currentMin);
    sum += arr[i];
  }
  return max < 0 ? max : Math.max(max, sum - min);
};
console.log(maxSubarraySumCircular(arr));

आउटपुट

4
  1. - JavaScript में ऐरे का अधिकतम मान कैसे खोजें?

    ऐरे में अधिकतम मान खोजने के तरीके 1. Math.max() के साथ स्प्रेड ऑपरेटर (आधुनिक, अनुशंसित) <script> var numbers = [6, 39, 55, 1, 44]; var max = Math.max(...numbers); document.write(अधिकतम: + max); // 55 </script> 2. Math.max.apply() (पुराना तरीका) <html> <body> <s

  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>

  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