Հակադարձել լարը


Դժվարության մակարդակ Հեշտ
Հաճախակի հարցնում են Infosys MAQ o9 լուծումներ TCS
String

Խնդիրի հայտարարություն

«Հակադարձել տողը» խնդիրը նշում է, որ ձեզ տրված է n չափի տող: Գրեք ծրագիր ՝ այն հետ շրջելու համար: Այսպիսով, ի՞նչ է նշանակում տողի վերափոխումը: Դա, ընդհանուր առմամբ, նշանակում է հակադարձել մեզ տրված մուտքային տողը: Այսինքն ՝ այն սահմանվում է որպես գործողություն, որը բերում է բառի մեջ բնօրինակ նիշերի դիրքի փոփոխության: Լարերի սկզբում առկա նիշը վերջանում է: Նմանապես, այլ նիշերը նույն ինդեքսով գնում են տարբեր ինդեքսների (ավելի ֆորմալ առումով, և նիշը անցնում է տողի երկարությանը -i -1 դիրքում):

Օրինակ

Հակադարձել տողը

TutorialCup
puClairotuT
Akshita
atihskA

Փոխանակման եղանակ

Ալգորիթմ

1. Initialise a string s of length n.
2. Create a function to reverse a string that accepts a string variable as it's a parameter.
3. Traverse through the string and swap the starting letter with ending letter until mid is reached.
4. Return the reversed string variable.

Բարդության վերլուծություն

Timeամանակի բարդությունը

O (n) որտեղ n- ը տրված բառի նիշերի թիվն է: Քանի որ մենք միայն անցել ենք մուտքը:

Տիեզերական բարդություն

Ո (1) քանի որ մենք օգտագործում էինք անընդհատ լրացուցիչ տարածք: Մենք չենք ստեղծել որևէ ժամանակավոր տող կամ զանգված:

Կոդ ՝ տողը հետադարձելու համար

C ++ ծրագիր

#include <bits/stdc++.h> 
using namespace std; 
  
string reverse(string s){ 
    int l = s.length(); 
  
    for(int i=0; i<l/2; i++) 
        swap(s[i], s[l-i-1]); 
        
    return s;    
} 
  
int main(){ 
    string s = "TutorialCup"; 
    cout<<reverse(s); 
    return 0; 
}
puClairotuT

Java ծրագիր

class reverseString{
    
    static String reverse(String input)
    { 
        StringBuilder str = new StringBuilder(input); 
        int length = str.length(); 
        for (int i = 0; i < length / 2; i++) 
        { 
            char current = str.charAt(i); 
            int otherEnd = length - i - 1; 
            str.setCharAt(i, str.charAt(otherEnd)); // swap 
            str.setCharAt(otherEnd, current); 
            
        } 
        return str.toString();
    }
    public static void main (String[] args){
        String s = "TutorialCup"; 
        System.out.println(reverse(s));
      }
}
puClairotuT

Օգտագործելով ներկառուցված հակադարձ մեթոդ

Ալգորիթմ

1. Initialize a string s of length n.
2. Use the inbuilt reverse function on it.
3. Print the reversed string variable.

Բարդության վերլուծություն

Timeամանակի բարդությունը

O (n) որտեղ n- ը տրված բառի նիշերի թիվն է:

Տիեզերական բարդություն

Ո (1) քանի որ մենք օգտագործում էինք անընդհատ լրացուցիչ տարածք:

Կոդ ՝ տողը հետադարձելու համար

C ++ ծրագիր

#include <bits/stdc++.h> 
using namespace std; 

int main(){ 
    string s = "TutorialCup"; 
  
    reverse(s.begin(), s.end()); 
  
    cout<<s; 
    return 0; 
}
puClairotuT

Java ծրագիր

import java.lang.*; 
import java.io.*; 
import java.util.*; 
  
class reverseString{
    
    public static void main(String[] args){ 
        String s = "TutorialCup"; 
  
        StringBuilder sobj = new StringBuilder(); 
  
        sobj.append(s); 
  
        sobj = sobj.reverse(); 
  
        System.out.println(sobj); 
    } 
}
puClairotuT

Տպում է միայն հակառակը

Լարը փոխելու ալգորիթմ

1. Initialize a string s of length n.
2. Create a function to reverse a string that accepts a string variable as it's a parameter.
3. Traverse through the given string variable from the last character to the first character.
4. Print every character of the string variable given.

Բարդության վերլուծություն

Timeամանակի բարդությունը

O (n) որտեղ n - ի թիվն է նիշ տրված բառում:

Տիեզերական բարդություն

Ո (1) քանի որ մենք օգտագործում էինք անընդհատ լրացուցիչ տարածք:

Կոդ ՝ տողը հետադարձելու համար

C ++ ծրագիր

#include <bits/stdc++.h> 
using namespace std; 
  
void reverse(string s){ 
   for(int i=s.length()-1; i>=0; i--) 
      cout<<s[i];  
} 
  
int main(){ 
    string s = "TutorialCup"; 
    reverse(s); 
    return 0; 
}
puClairotuT

Java ծրագիր

import java.lang.*; 
import java.io.*; 
import java.util.*; 
  
class reverseString{
    
    public static void main(String[] args){ 
        
        String s = "TutorialCup"; 
  
        char[] s1 = s.toCharArray(); 
  
        for(int i=s1.length-1; i>=0; i--) 
            System.out.print(s1[i]); 
    } 
}
puClairotuT

Օգտագործելով նիշերի զանգված

Լարը փոխելու ալգորիթմ

1. Initialize a string s of length n.
2. Create a function to reverse a string that accepts a string variable as it's a parameter.
3. Create a character array and copy the given string variable in it.
4. Traverse through the character array till the mid swapping the starting characters and the ending characters.
5. Return the character array containing the reversed string.

Բարդության վերլուծություն

Timeամանակի բարդությունը

O (n) որտեղ n- ը տրված բառի նիշերի թիվն է:

Տիեզերական բարդություն

O (n) քանի որ մենք օգտագործել ենք n լրացուցիչ տարածք:

Կոդ ՝ տողը հետադարձելու համար

C ++ ծրագիր

#include <bits/stdc++.h> 
using namespace std; 
  
char* reverse(char const* s){ 
    int l = strlen(s); 
  
    char *rev = new char[l+1]; 
  
    strcpy(rev, s); 
  
    for(int i=0, j=l-1; i<j; i++,j--) 
        swap(rev[i], rev[j]);        
      
    return rev; 
} 
  
int main(void){ 
    const char *s = "TutorialCup"; 
    cout<<reverse(s); 
    return (0); 
} 
puClairotuT

Java ծրագիր

import java.lang.*; 
import java.io.*; 
import java.util.*; 
  
class reverseString{
    
    public static void main(String[] args){ 
        String s = "TutorialCup"; 
        char[] temp = s.toCharArray(); 
        int left, right=0; 
        right = temp.length-1; 
  
        for(left=0; left<right ; left++ ,right--){ 
            char t = temp[left]; 
            temp[left] = temp[right]; 
            temp[right]=t; 
        } 
  
        for (char c : temp) 
            System.out.print(c); 
        System.out.println(); 
    } 
}
puClairotuT