ഒരു സ്ട്രിംഗ് വിപരീതമാക്കുക


വൈഷമ്യ നില എളുപ്പമായ
പതിവായി ചോദിക്കുന്നു ഇൻഫോസിസ് MAQ o9 പരിഹാരങ്ങൾ ടിസിഎസ്
സ്ട്രിംഗ്

ഉള്ളടക്ക പട്ടിക

പ്രശ്നം പ്രസ്താവന

“റിവേഴ്സ് എ സ്ട്രിംഗ്” പ്രശ്നം നിങ്ങൾക്ക് n വലുപ്പമുള്ള ഒരു സ്ട്രിംഗ് നൽകിയിട്ടുണ്ടെന്ന് പറയുന്നു. ഇത് പഴയപടിയാക്കാൻ ഒരു പ്രോഗ്രാം എഴുതുക. അതിനാൽ, ഒരു സ്ട്രിംഗ് വിപരീതമാക്കുന്നത് എന്താണ് അർത്ഥമാക്കുന്നത്? പൊതുവെ അർത്ഥമാക്കുന്നത് ഞങ്ങൾക്ക് നൽകിയിരിക്കുന്ന ഇൻപുട്ട് സ്ട്രിംഗ് പഴയപടിയാക്കുക എന്നാണ്. അതാണ് ഒരു പദത്തിലെ യഥാർത്ഥ പ്രതീകങ്ങളുടെ സ്ഥാനത്ത് മാറ്റം വരുത്തുന്ന ഒരു ഓപ്പറേഷൻ ചെയ്യുന്നത് എന്ന് നിർവചിച്ചിരിക്കുന്നത്. സ്‌ട്രിംഗിന്റെ തുടക്കത്തിൽ നിലവിലുള്ള പ്രതീകം അവസാനിക്കും. അതുപോലെ, മറ്റ് പ്രതീകങ്ങൾ ഒരേ രീതിയിൽ വ്യത്യസ്ത സൂചികകളിലേക്ക് പോകുന്നു (കൂടുതൽ ly പചാരികമായി ith പ്രതീകം സ്ട്രിംഗ് -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.

സങ്കീർണ്ണത വിശകലനം

സമയ സങ്കീർണ്ണത

O (n) ഇവിടെ n എന്നത് തന്നിരിക്കുന്ന പദത്തിലെ പ്രതീകങ്ങളുടെ എണ്ണം. ഞങ്ങൾ‌ ഇൻ‌പുട്ടിൽ‌ മാത്രമേ സഞ്ചരിച്ചുള്ളൂ.

ബഹിരാകാശ സങ്കീർണ്ണത

O (1) കാരണം ഞങ്ങൾ സ്ഥിരമായ അധിക ഇടം ഉപയോഗിച്ചു. ഞങ്ങൾ ഒരു താൽക്കാലിക സ്ട്രിംഗോ അറേയോ സൃഷ്ടിച്ചിട്ടില്ല.

ഒരു സ്ട്രിംഗ് റിവേഴ്സ് ചെയ്യാനുള്ള കോഡ്

സി ++ പ്രോഗ്രാം

#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

ജാവ പ്രോഗ്രാം

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.

സങ്കീർണ്ണത വിശകലനം

സമയ സങ്കീർണ്ണത

O (n) ഇവിടെ n എന്നത് തന്നിരിക്കുന്ന പദത്തിലെ പ്രതീകങ്ങളുടെ എണ്ണം.

ബഹിരാകാശ സങ്കീർണ്ണത

O (1) കാരണം ഞങ്ങൾ സ്ഥിരമായ അധിക ഇടം ഉപയോഗിച്ചു.

ഒരു സ്ട്രിംഗ് റിവേഴ്സ് ചെയ്യാനുള്ള കോഡ്

സി ++ പ്രോഗ്രാം

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

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

ജാവ പ്രോഗ്രാം

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.

സങ്കീർണ്ണത വിശകലനം

സമയ സങ്കീർണ്ണത

O (n) ഇവിടെ n എന്നത് സംഖ്യയാണ് പ്രതീകങ്ങൾ നൽകിയ വാക്കിൽ.

ബഹിരാകാശ സങ്കീർണ്ണത

O (1) കാരണം ഞങ്ങൾ സ്ഥിരമായ അധിക ഇടം ഉപയോഗിച്ചു.

ഒരു സ്ട്രിംഗ് റിവേഴ്സ് ചെയ്യാനുള്ള കോഡ്

സി ++ പ്രോഗ്രാം

#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

ജാവ പ്രോഗ്രാം

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.

സങ്കീർണ്ണത വിശകലനം

സമയ സങ്കീർണ്ണത

O (n) ഇവിടെ n എന്നത് തന്നിരിക്കുന്ന പദത്തിലെ പ്രതീകങ്ങളുടെ എണ്ണം.

ബഹിരാകാശ സങ്കീർണ്ണത

O (n) കാരണം ഞങ്ങൾ n അധിക ഇടം ഉപയോഗിച്ചു.

ഒരു സ്ട്രിംഗ് റിവേഴ്സ് ചെയ്യാനുള്ള കോഡ്

സി ++ പ്രോഗ്രാം

#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

ജാവ പ്രോഗ്രാം

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