Çapın tərsini çap edin (Rekursiya)


SimBaxılıb 358

Sistem dizaynı ilə bağlı müsahibə sualları o qədər açıq ola bilər ki, düzgün hazırlaşmağı bilmək çox çətindir. İndi satın aldıqdan sonra Amazon, Microsoft və Adobe-nin dizayn dövrlərini sındıra bilirəm Bu kitabı. Gündəlik bir yenidən nəzərdən keçirin dizayn sualı və söz verirəm ki, dizayn dövrünü sındıra bilərsiniz.

Rekursiyadan istifadə edərək sətrin əksini çap edin.

misal

a) Giriş sətri: Sachin
Çıxış: nihcas

b) Giriş sətri: Kod
Çıxış: edoC

Zamanın mürəkkəbliyi: O (n)

Alqoritm

Sətri rekursiv şəkildə tərs etmək üçün Reverse funksiyası yaradın
Bu funksiyada

a. Giriş olaraq simli göstəricini (str) götürür.

b. Göstəricini (str + 1) ötürmək üçün növbəti yeri ilə özünü (rekursiv olaraq) çağırır.

c. İpin sonuna çatana qədər rekursiyaya davam edin.

d. Yığıncaqda yığılan bütün funksiyalardan sonra göstəricidən char yazdırın.

e. Birinin ardınca qayıdın.

Alqoritm işləyir

C ++ Proqramı

#include <bits/stdc++.h>

using namespace std;

//Recursive function to reverse a string
void Reverse(char *str)
{
   if(*str)
   {
       Reverse(str+1);
       cout<<*str;
   }
}
 
//Main function
int main()
{
   char string[] = "code";
   cout<<"Input string: ";
   for (int i = 0; i < strlen(string); ++i)
   {
     cout<<string[i];
   }
   cout<<"\nOutput string after reversing: ";
   Reverse(string);
   return 0;
}

Yoxla

 

Crack Sistemi Dizayn Müsahibələri
Translate »