| 
            
             Be the first user to complete this post  
            
             | 
         Add to List | 
90. Find Subarray with Sum Equal to a Target Value
Objective: Given an array (non-negative) and an integer, Find the Subarray whose sum equals the given integer.
Examples:
int[] arrA = { 25, 12, 14, 22, 19, 15, 10, 23 };
Integer = 55
Output
55 is found between indexes 2 and 4 And Elements are : 14 22 19
Approach :
Naive Approach: Use nested loops. Time Complexity - O(n2).
Better Approach: Time Complexity - O(n)
- Iterate Through Array.
 - Continuously add elements starting from index 0 to the currSum.
 - While iterating through the array, check if currSum is greater than the target sum Sum.
 - Adjust Current Sum: If currSum exceeds Sum, start reducing currSum by subtracting elements from the beginning of the array using the start index.
 - While reducing currSum, check if it equals the target sum Sum. If it does, stop the iteration and return.
 - Handle End of Array: If the loop finishes without finding a subarray with a sum equal to Sum, print a message indicating that no such subarray was found.
 
Output:
55 is found between indexes 2 and 4 And Elements are : 14 22 19