Given an array of integers, find sum of array elements using recursion.
Examples:
Input : A[] = {1, 2, 3} Output : 6 1 + 2 + 3 = 6 Input : A[] = {15, 12, 13, 10} Output : 50
We have discussed iterative solution in below post.
Sum of elements in a given array
In this post, recursive solution is discussed.
C++
// C++ program to find sum of array // elements using recursion. #include <stdio.h> // Return sum of elements in A[0..N-1] // using recursion. int findSum( int A[], int N) { if (N <= 0) return 0; return (findSum(A, N - 1) + A[N - 1]); } // Driver code int main() { int A[] = { 1, 2, 3, 4, 5 }; int N = sizeof (A) / sizeof (A[0]); printf ( "%d" , findSum(A, N)); return 0; } |
Java
// Java program to find sum of array // elements using recursion. public class Test { static int arr[] = { 1 , 2 , 3 , 4 , 5 }; // Return sum of elements in A[0..N-1] // using recursion. static int findSum( int A[], int N) { if (N <= 0 ) return 0 ; return (findSum(A, N - 1 ) + A[N - 1 ]); } // Driver method public static void main(String[] args) { System.out.println(findSum(arr, arr.length)); } } |
Python3
# Python program to find sum of array # elements using recursion. # Return sum of elements in A[0..N-1] # using recursion. def _findSum(arr, N): if N < = 0 : return 0 else : return _findSum(arr, N - 1 ) + arr[N - 1 ] # driver code arr = [] # input values to list arr = [ 1 , 2 , 3 , 4 , 5 ] # calculating length of array N = len (arr) ans = _findSum(arr,N) print (ans) # This code is contributed by Khare Ishita |
C#
// C# program to find sum of array // elements using recursion. using System; class Test { static int []arr = {1, 2, 3, 4, 5}; // Return sum of elements in // A[0..N-1] using recursion. static int findSum( int []A, int N) { if (N <= 0) return 0; return (findSum(A, N - 1) + A[N - 1]); } // Driver Code public static void Main() { Console.Write(findSum(arr, arr.Length)); } } // This code is contributed by Nitin Mittal. |
PHP
<?php // PHP program to find sum // of array elements using // recursion. // Return sum of elements // in A[0..N-1] using recursion. function findSum( $A , $N ) { if ( $N <= 0) return 0; return (findSum( $A , $N - 1) + $A [ $N - 1]); } // Driver code $A = array (1, 2, 3, 4, 5); $N = sizeof( $A ); echo findSum( $A , $N ); // This code is contributed // by ihritik ?> |
Javascript
<script> // JavaScript program to find sum of array // elements using recursion. // Return sum of elements in A[0..N-1] // using recursion. function findSum(A, N) { if (N <= 0) return 0; return (findSum(A, N - 1) + A[N - 1]); } // Driver code let A = [1, 2, 3, 4, 5]; let N = A.length; document.write(findSum(A, N)); </script> |
15
Time Complexity; O(n)
Here n is the number of elements in the array.
Auxiliary Space: O(n)
The extra space is used in recursion call stack.
How does above recursive solution work?
This article is contributed by
Prakhar Agrawal. If you like neveropen and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the neveropen main page and help other Geeks.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!