Don’t miss the chance of Java programs examples with output pdf free download as it is very essential for all beginners to experienced programmers for cracking the interviews.

**Recursion:**

Recursion is a functional technique to problem-solving that involves breaking an issue down into a series of small subproblems with an identical pattern and solving them sequentially by calling one subproblem within another. Recursion is carried out by defining a function capable of solving one subproblem at a time. It calls itself but solves another subproblem somewhere inside that method. As a result, the call to itself continues until some limiting requirements are met.

The main program’s first call to a recursive function will be returned only after all sub calls have completed. As a result, Python keeps the results of all subproblems in temporary memory, does some arithmetic operations (if necessary), and releases the memory at the end of the recursion.

**Lists in Python:**

A list is a built-in Python data structure that stores a collection of things. Lists have a number of key features:

- Items in a list are enclosed in square brackets, as in [item1, item2, item3].
- Lists are ordered, which means that the items in the list appear in a particular order. This allows us to use an index to find any object.
- Lists are mutable, which means they can be added or removed once they are created.
- List elements do not have to be distinct. Item duplication is possible since each element has its own individual address and may be accessed independently via the index.
- Elements can be of many data types: strings, numbers, and objects can all be combined in the same list.

Given a list, the task is to calculate the length of the given list recursively in Python

**Examples:**

**Example1:**

**Input:**

given list = [929, 138, 3, 193, 11, 1, 2, 3, 41, 132, 56, 11, 917, 212, 455, 2235, 1, 1, 2, 3]

**Output:**

The given list is : [929, 138, 3, 193, 11, 1, 2, 3, 41, 132, 56, 11, 917, 212, 455, 2235, 1, 1, 2, 3] The length of the given list = 20

**Example2:**

**Input:**

given list = ['hello', 'this', 'btechgeeks', 'python']

**Output:**

The given list is : ['hello', 'this', 'btechgeeks', 'python'] The length of the given list = 4

## Program to Find the Length of a List Using Recursion in Python

Below are the ways to find the length of the given list in python using the recursive approach:

When it is necessary to find the length of a list using recursion, a user-defined algorithm and a simple indexing method are utilized.

The recursion computes the output of little pieces of the larger problem and combines them to produce the answer to the larger problem.

### 1)Using Recursion(Static Input)

**Approach:**

- Give the list input as static input and store it in a variable.
- Pass the given list as an argument to the recursive function which calculates the length of the given list and returns it.
- Put a condition in the method that says if it isn’t the original list, it should return 0.
- Otherwise, execute the function recursively to determine the length of the list.
- The Recursive function returns the length of the list.
- Print the length of the given list.
- The exit of Program.

**Below is the implementation:**

# function which accepts the list as argument and # calculates the length of the given list and return it def listlengthRecursion(given_list): # Put a condition in the method that says if it # isn't the original list, it should return 0. if not given_list: return 0 # Otherwise, execute the function recursively to determine the length of the list. return 1 + listlengthRecursion(given_list[1::2]) + listlengthRecursion(given_list[2::2]) # Give the list input as static input and store it in a variable. given_list = [929, 138, 3, 193, 11, 1, 2, 3, 41, 132, 56, 11, 917, 212, 455, 2235, 1, 1, 2, 3] # printing the given list print('The given list is :') print(given_list) # Pass the given list as an argument to the recursive function which # calculates the length of the given list and returns it. print("The length of the given list = ", listlengthRecursion(given_list))

**Output:**

The given list is : [929, 138, 3, 193, 11, 1, 2, 3, 41, 132, 56, 11, 917, 212, 455, 2235, 1, 1, 2, 3] The length of the given list = 20

**Explanation:**

- Create a recursive function that accepts a list as an argument.
- Given the list input as static input and stored it into a variable.
- Put a condition in the method that says if it isn’t the original list, it should return 0.
- Otherwise, execute the function recursively to determine the length of the list.
- Print the result(which is the length of the given list)

### 2)Using Recursion(User Input)

**i)Integer List**

**Approach:**

- Give the list as user input (integer list) using the map(),int(),split() and list() functions and store in a variable.
- Pass the given list as an argument to the recursive function which calculates the length of the given list and returns it.
- Put a condition in the method that says if it isn’t the original list, it should return 0.
- Otherwise, execute the function recursively to determine the length of the list.
- The Recursive function returns the length of the list.
- Print the length of the given list.
- The exit of Program.

**Below is the implementation:**

# function which accepts the list as argument and # calculates the length of the given list and return it def listlengthRecursion(given_list): # Put a condition in the method that says if it # isn't the original list, it should return 0. if not given_list: return 0 # Otherwise, execute the function recursively to determine the length of the list. return 1 + listlengthRecursion(given_list[1::2]) + listlengthRecursion(given_list[2::2]) # Give the list as user input (integer list) using the map(),int(),split() and list() # functions and store in a variable. given_list = list(map(int, input('Enter some random elements of the list separated by spaces ').split())) # printing the given list print('The given list is :') print(given_list) # Pass the given list as an argument to the recursive function which # calculates the length of the given list and returns it. print("The length of the given list = ", listlengthRecursion(given_list))

**Output:**

Enter some random elements of the list separated by spaces 7 372 1 93 2 491 22 434 11 45 9 8 2 3 4 The given list is : [7, 372, 1, 93, 2, 491, 22, 434, 11, 45, 9, 8, 2, 3, 4] The length of the given list = 15

**ii)String List**

**Approach:**

- Give the list as user input (String list) using the split() and list() functions and store in a variable.
- Pass the given list as an argument to the recursive function which calculates the length of the given list and returns it.
- Put a condition in the method that says if it isn’t the original list, it should return 0.
- Otherwise, execute the function recursively to determine the length of the list.
- The Recursive function returns the length of the list.
- Print the length of the given list.
- The exit of Program.

**Below is the implementation:**

# function which accepts the list as argument and # calculates the length of the given list and return it def listlengthRecursion(given_list): # Put a condition in the method that says if it # isn't the original list, it should return 0. if not given_list: return 0 # Otherwise, execute the function recursively to determine the length of the list. return 1 + listlengthRecursion(given_list[1::2]) + listlengthRecursion(given_list[2::2]) # Give the list as user input (String list) using the split() and list() functions and store in a variable. given_list = list( input('Enter some random elements of the list separated by spaces =').split()) # printing the given list print('The given list is :') print(given_list) # Pass the given list as an argument to the recursive function which # calculates the length of the given list and returns it. print("The length of the given list = ", listlengthRecursion(given_list))

**Output:**

Enter some random elements of the list separated by spaces =hello this is bychg btechgeeeks The given list is : ['hello', 'this', 'is', 'bychg', 'btechgeeeks'] The length of the given list = 5

**Related Programs**:

- Python Program to Check Whether a String is a Palindrome or not Using Recursion
- Python Program to Find the Product of two Numbers Using Recursion
- Python Program to Find if a Number is Prime or Not Prime Using Recursion
- Python Program to Find the Power of a Number Using Recursion
- Python Program to Find the LCM of Two Numbers Using Recursion
- Python Program to Reverse a String Using Recursion