Posted on by Kalkicode
Code Recursion

Reverse string using recursion

The code presented addresses the problem of reversing a string using recursion. Recursion is a programming technique where a function calls itself to solve a problem, breaking it down into smaller subproblems. In this context, the code aims to reverse a given string using a recursive approach.

Problem Statement

The task is to reverse a given string using recursion. The program should take a string as input and output the reversed version of the string by recursively reversing its characters.


Example 1
Input   : ABCDE
Output  : EDCBA

Example 2
Input   : 654A321
Output  : 123A456

For the input string "ABCDE", the output of the program would be "EDCBA" after reversing it using recursion.

Solution Idea

The solution involves a recursive approach where the function reverses the characters of the string by appending the characters from the end of the string to the beginning, one by one.


reverseText(text, location):
    if location >= 0:
        return text.charAt(location) + reverseText(text, location - 1)
    return ""

    print "Before Text: [", text, "]"
    return reverseText(text, length(text) - 1)

Algorithm Explanation

  1. The reverseText function is a recursive function that takes the string and the current character's location as parameters.
  2. The base condition is when the location is less than 0, indicating that all characters have been processed. In this case, an empty string is returned.
  3. If the base condition is not met, the function appends the character at the given location to the result of the recursive call on the previous location (location - 1).
  4. The reverse function is used to initiate the reversal process. It prints the original string, calls the reverseText function, and returns the reversed result.

Program List

Output Explanation

For the input "ABCDE", the output will display the original string ("Before Text: [ABCDE]") and then show the reversed string ("After Text: [EDCBA]") after the recursive reversal process.

Time Complexity

The time complexity of the algorithm is O(N), where N is the length of the input string. This is because the recursive function is called for each character of the string, and each call performs a constant amount of work.


Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.

New Comment