33. Search in Rotated Sorted Array 📄 Problem Statement : There is an integer array nums sorted in ascending order (with distinct values). Before being passed to your function, nums may be rotated at an unknown pivot index k (where 1 <= k < nums.length ) such that the array becomes [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]] . You are given the array nums after the rotation and an integer target . Your task is to return the index of the target if it exists in nums , or return -1 if it does not exist. You must solve it in O(log n) time. 📚 Examples : Example 1 : Input: nums = [4,5,6,7,0,1,2], target = 0 Output: 4 Example 2 : Input: nums = [4,5,6,7,0,1,2], target = 3 Output: -1 Example 3 : Input: nums = [1], target = 0 Output: -1 📜 Constraints : 1 <= nums.length <= 5000 -10⁴ <= nums[i] <= 10⁴ All values of nums are unique . nums is a sorted array, possibly rotated . -10⁴ <= target <= 10⁴ ...
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: ...