Tuesday, November 19, 2024
Google search engine
HomeData Modelling & AISum of array elements using recursion

Sum of array elements using recursion

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
Recommended Practice

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>


Output

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.

Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

RELATED ARTICLES

Most Popular

Recent Comments