Title: #918 - Maximum Sum Circular Subarray - LeetCode JavaScript Solutions
Open Graph Title: #918 - Maximum Sum Circular Subarray - LeetCode JavaScript Solutions
X Title: #918 - Maximum Sum Circular Subarray - LeetCode JavaScript Solutions
Description: Given a circular integer array nums of length n, return the maximum possible sum of a non-empty subarray of nums. A circular array means the...
Open Graph Description: Given a circular integer array nums of length n, return the maximum possible sum of a non-empty subarray of nums. A circular array means the...
X Description: Given a circular integer array nums of length n, return the maximum possible sum of a non-empty subarray of nums. A circular array means the...
Keywords:
Opengraph URL: https://leetcodejavascript.com/solutions/maximum-sum-circular-subarray
Domain: leetcodejavascript.com
{"@context":"https://schema.org","@type":"Code","url":"https://leetcodejavascript.com/solutions/maximum-sum-circular-subarray","name":"#918 - Maximum Sum Circular Subarray - LeetCode JavaScript Solutions","description":"Given a circular integer array nums of length n, return the maximum possible sum of a non-empty subarray of nums. A circular array means the...","programmingLanguage":"JavaScript","codeRepository":"https://github.com/JoshCrozier/leetcode-javascript","codeSampleType":"JavaScript","text":"/**\n * @param {number[]} nums\n * @return {number}\n */\nvar maxSubarraySumCircular = function(nums) {\n let [min, max, sum] = [nums[0], nums[0], nums[0]];\n\n for (let i = 1, prevMin = nums[0], prevMax = nums[0]; i < nums.length; i++) {\n prevMax = Math.max(nums[i], prevMax + nums[i]);\n max = Math.max(max, prevMax);\n prevMin = Math.min(nums[i], prevMin + nums[i]);\n min = Math.min(min, prevMin);\n sum += nums[i];\n }\n\n return max > 0 ? Math.max(max, sum - min) : max;\n};","keywords":"LeetCode 918, #918 - Maximum Sum Circular Subarray, Medium, JavaScript solution","learningResourceType":"Code","isAccessibleForFree":true,"educationalLevel":"intermediate","interactivityType":"mixed"}
| author | LeetCodeJavascript.com |
| og:type | article |
| og:image | https://leetcodejavascript.com/og-image.jpg |
| og:site_name | LeetCode JavaScript Solutions |
| twitter:card | summary_large_image |
| twitter:url | https://leetcodejavascript.com/solutions/maximum-sum-circular-subarray |
| twitter:image | https://leetcodejavascript.com/og-image.jpg |
| twitter:creator | @joshcrozier |
| theme-color | #1f2937 |
Links:
| LeetCodeJavascript.com | https://leetcodejavascript.com/ |
| Star on GitHub | https://github.com/JoshCrozier/leetcode-javascript |
| Back to all solutions | https://leetcodejavascript.com |
| View on LeetCode | https://leetcode.com/problems/maximum-sum-circular-subarray/ |
| View on GitHub | https://github.com/JoshCrozier/leetcode-javascript/blob/master/solutions/0918-maximum-sum-circular-subarray.js |
| Array | https://leetcodejavascript.com/tags/array |
| Dynamic Programming | https://leetcodejavascript.com/tags/dynamic-programming |
| Queue | https://leetcodejavascript.com/tags/queue |
| Divide and Conquer | https://leetcodejavascript.com/tags/divide-and-conquer |
| Monotonic Queue | https://leetcodejavascript.com/tags/monotonic-queue |
| Josh Crozier | https://joshcrozier.com |
Viewport: width=device-width, initial-scale=1.0
Robots: index, follow