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

जावास्क्रिप्ट का उपयोग करते हुए वृत्ताकार सरणी में अधिकतम उपसरणी योग

<घंटा/>

समस्या

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

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

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

इनपुट

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. जावास्क्रिप्ट में किसी सरणी का अधिकतम मान कैसे प्राप्त करें?

    हम Math.max () और सॉर्ट () फ़ंक्शन का उपयोग करके किसी सरणी का अधिकतम मान प्राप्त कर सकते हैं। 1) Math.max() Math.max() फ़ंक्शन आमतौर पर सभी तत्वों को एक सरणी में लेता है और अधिकतम मान प्राप्त करने के लिए प्रत्येक मान की जांच करता है। इसकी कार्यप्रणाली नीचे दिए गए उदाहरण में चर्चा की गई है। उदाहरण

  1. जावास्क्रिप्ट का उपयोग करके ऐरे में नेस्टेड ऑब्जेक्ट मानों का योग

    जावास्क्रिप्ट का उपयोग करके नेस्टेड ऑब्जेक्ट मानों को सरणी में जोड़ने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0&

  1. जावास्क्रिप्ट वस्तुओं की सरणी पर सरणी के तरीकों का उपयोग करना?

    जावास्क्रिप्ट ऑब्जेक्ट्स की सरणी पर सरणी के तरीकों का उपयोग करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"