Skip to main content

Posts

Showing posts with the label Maximum Subarray

My First Week in India: Expectations vs. Reality

My First Week in India: Expectations vs. Reality My First Week in India: Expectations vs. Reality Arriving in a new country is always a mix of excitement and apprehension. As I embarked on my journey to India, I had a set of expectations based on research, stories, and stereotypes. My first week in India has been a whirlwind of experiences that have both aligned with and diverged from my expectations. Here’s a comparison of what I anticipated versus what I actually encountered. Expectations Warm and Humid Weather: I expected the weather to be consistently warm and humid, as is often depicted in travel blogs and movies. Spicy Food: I anticipated a diet heavily spiced with rich and diverse flavors, given India’s renowned culinary reputation. Cultural Festivities: I was excited to witness vibrant cultural festivals and traditional celebrations throughout the year. ...

53. Maximum Subarray | Kadane’s Algorithm

53. Maximum Subarray  Medium Topics: Array, Dynamic Programming 💬 Problem Statement: Given an integer array nums , find the subarray with the largest sum , and return its sum. 🧪 Examples: Example 1: Input: nums = [-2,1,-3,4,-1,2,1,-5,4] Output: 6 Explanation: The subarray [4,-1,2,1] has the largest sum 6. Example 2: Input: nums = [1] Output: 1 Explanation: The subarray [1] has the largest sum 1. Example 3: Input: nums = [5,4,-1,7,8] Output: 23 Explanation: The subarray [5,4,-1,7,8] has the largest sum 23. 🔒 Constraints: 1 <= nums.length <= 10⁵ -10⁴ <= nums[i] <= 10⁴ 🧠 Approach 1: Kadane's Algorithm (O(n) Time) Kadane’s Algorithm helps you find the maximum sum of a contiguous subarray in just one pass. 👉 Intuition: We move through the array and: Keep adding elements to a running sum ( maxEndingHere ) If maxEndingHere becomes negative, we reset it to 0 Track the maximum seen so far in maxSoFar   MY solution, 🪄 Java Code:   ...