Рубрики

Вывести обратную строку с помощью рекурсии

Напишите рекурсивную функцию для печати обратной строки.

Программа:

C ++

// C ++ программа для обращения строки с использованием рекурсии
#include <bits/stdc++.h>

using namespace std;

  
/ * Функция для печати реверса переданной строки * /

void reverse(string str) 

    if(str.size() == 0)

    {

        return;

    }

    reverse(str.substr(1));

    cout << str[0];

  
/ * Программа драйвера для проверки вышеуказанной функции * /

int main() 

    string a = "Geeks for Geeks"

    reverse(a); 

    return 0; 

  
// Это код, предоставленный rathbhupendra

С

// C-программа для обращения строки с использованием рекурсии
# include <stdio.h>

  
/ * Функция для печати реверса переданной строки * /

void reverse(char *str)

{

   if (*str)

   {

       reverse(str+1);

       printf("%c", *str);

   }

}

  
/ * Программа драйвера для проверки вышеуказанной функции * /

int main()

{

   char a[] = "Geeks for Geeks";

   reverse(a);

   return 0;

}

Джава

// Java программа для обращения строки с помощью рекурсии

  

class StringReverse

{

    / * Функция для печати реверса переданной строки * /

    void reverse(String str)

    {

        if ((str==null)||(str.length() <= 1))

           System.out.println(str);

        else

        {

            System.out.print(str.charAt(str.length()-1));

            reverse(str.substring(0,str.length()-1));

        }

    }

      

    / * Программа драйвера для проверки вышеуказанной функции * /

    public static void main(String[] args) 

    {

        String str = "Geeks for Geeks";

        StringReverse obj = new StringReverse();

        obj.reverse(str);

    }    

}

питон

# Python программа для реверсирования строки с использованием рекурсии

  
# Функция для печати реверса переданной строки

def reverse(string):

    if len(string) == 0:

        return

      

    temp = string[0]

    reverse(string[1:])

    print(temp, end='')

  
# Программа драйвера для проверки вышеуказанной функции

string = "Geeks for Geeks"

reverse(string)

  
# Однострочный оператор для обращения строки в python
# строка [:: - 1]

  
# Этот код предоставлен Bhavya Jain

C #

// C # программа для реверса
// строка с использованием рекурсии

using System;

  

class GFG

{

    // Функция для печати реверса

    // пропущенной строки

    static void reverse(String str)

    {

        if ((str == null) || (str.Length <= 1))

        Console.Write(str);

      

        else

        {

            Console.Write(str[str.Length-1]);

            reverse(str.Substring(0,(str.Length-1)));

        }

    }

      

    // Код драйвера

    public static void Main() 

    {

        String str = "Geeks for Geeks";

        reverse(str);

    

}

  
// Этот код предоставлен Sam007

PHP

<?php
// PHP программа для реверса
// строка с использованием рекурсии

  
// Функция для печати реверса
// пропущенной строки

function reverse($str)

{

    if (($str == null) || 

        (strlen($str) <= 1))

    echo ($str);

  

    else

    {

        echo ($str[strlen($str) - 1]);

        reverse(substr($str, 0, 

               (strlen($str) - 1)));

    }

}

  
// Код драйвера

$str = "Geeks for Geeks";

reverse($str);

  
// Этот код предоставлен
// Маниш Шоу (manishshaw1)
?>


Выход:

skeeG rof skeeG


Объяснение:
Рекурсивная функция (reverse) принимает в качестве входных данных строковый указатель (str) и вызывает себя со следующим местоположением переданного указателя (str + 1). Рекурсия продолжается таким образом, когда указатель достигает значения «/ 0», все функции, накопленные в стеке, печатают char в переданном местоположении (str) и возвращают одну за другой.

Рекомендуемые посты:

Вывести обратную строку с помощью рекурсии

0.00 (0%) 0 votes