La biblioteca de cadenes de Python no és compatible amb l'incorporat revés () tal com ho fan altres contenidors Python com la llista, per tant, conèixer altres mètodes per invertir la cadena pot resultar útil. Aquest article tracta diverses maneres d'aconseguir-ho Python .
Exemple:
Input: Geeksforgeeks Output: skeegrofskeeG>
Inverteix una cadena a Python mitjançant un bucle
En aquest exemple, cridem a una funció per invertir una cadena, que itera a cada element i de manera intel·ligent uneix cada personatge al principi per tal d'obtenir la corda invertida.
Complexitat temporal: O(n)
Espai auxiliar: O(1)
Implementació:
Python 3
def> reverse(s):> > str> => ''> > for> i> in> s:> > str> => i> +> str> > return> str> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , end> => '')> print> (s)> print> (> 'The reversed string(using loops) is : '> , end> => '')> print> (reverse(s))> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using loops) is : skeegrofskeeG>
Inverteix una cadena a Python mitjançant recursivitat
La cadena es passa com a argument a a funció recursiva per invertir la corda. A la funció, la condició base és que si la longitud de la cadena és igual a 0, es retorna la cadena. Si no és igual a 0, la funció inversa es crida recursivament per tallar la part de la cadena excepte el primer caràcter i concatenar el primer caràcter al final de la cadena tallada. '
Implementació:
Python 3
pàgines del servidor java
def> reverse(s):> > if> len> (s)> => => 0> :> > return> s> > else> :> > return> reverse(s[> 1> :])> +> s[> 0> ]> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , end> => '')> print> (s)> print> (> 'The reversed string(using recursion) is : '> , end> => '')> print> (reverse(s))> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using recursion) is : skeegrofskeeG>
Complexitat temporal : O(n), per a la recursivitat per revertir
Espai Auxiliar : O(n), per a la pila de trucades de recursivitat
Invertir la cadena a Python mitjançant stack
Un buit Complexitat temporal: O(n)
Espai auxiliar: O(n)
Implementació:
Python 3
# Function to create an empty stack. It> # initializes size of stack as 0> def> createStack():> > stack> => []> > return> stack> # Function to determine the size of the stack> def> size(stack):> > return> len> (stack)> # Stack is empty if the size is 0> def> isEmpty(stack):> > if> size(stack)> => => 0> :> > return> true> # Function to add an item to stack . It> # increases size by 1> def> push(stack, item):> > stack.append(item)> # Function to remove an item from stack.> # It decreases size by 1> def> pop(stack):> > if> isEmpty(stack):> > return> > return> stack.pop()> # A stack based function to reverse a string> def> reverse(string):> > n> => len> (string)> > # Create a empty stack> > stack> => createStack()> > # Push all characters of string to stack> > for> i> in> range> (> 0> , n,> 1> ):> > push(stack, string[i])> > # Making the string empty since all> > # characters are saved in stack> > string> => ''> > # Pop all characters of string and put> > # them back to string> > for> i> in> range> (> 0> , n,> 1> ):> > string> +> => pop(stack)> > return> string> # Driver code> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , end> => '')> print> (s)> print> (> 'The reversed string(using stack) is : '> , end> => '')> print> (reverse(s))> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using stack) is : skeegrofskeeG>
Invertir la cadena a Python utilitzant una porció estesa
La porció ampliada ofereix posar un camp de pas com [iniciar, aturar, fer un pas] , i no donar cap camp com a inici i parada indica per defecte 0 i longitud de cadena respectivament, i -1 indica començar des del final i aturar-se al començament, per tant invertir una cadena.
Complexitat temporal : O(n)
Espai Auxiliar : O(1)
Implementació:
Python 3
mapa en java
# Function to reverse a string> def> reverse(string):> > string> => string[::> -> 1> ]> > return> string> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , end> => '')> print> (s)> print> (> 'The reversed string(using extended slice syntax) is : '> , end> => '')> print> (reverse(s))> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using extended slice syntax) is : skeegrofskeeG>
Invertir la cadena a Python utilitzant el mètode reversed().
El invertit () retorna l'iterador invertit de la cadena donada i després els seus elements s'uneixen una cadena buida separada mitjançant join(). I es forma una cadena d'ordre invers.
Complexitat temporal : O(n)
Espai Auxiliar : O(n)
Implementació:
Python 3
# Python code to reverse a string> # using reversed()> # Function to reverse a string> def> reverse(string):> > string> => ''.join(> reversed> (string))> > return> string> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , end> => '')> print> (s)> print> (> 'The reversed string(using reversed) is : '> , end> => '')> print> (reverse(s))> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using reversed) is : skeegrofskeeG>
Cadena inversa a Python mitjançant la comprensió de llista ()
La comprensió de llista crea la llista d'elements d'una cadena en ordre invers i després els seus elements s'uneixen mitjançant uneix-te () . I es forma una cadena d'ordre invers.
Complexitat temporal: O(n)
Espai auxiliar: O(1)
Implementació:
Python 3
# Function to reverse a string> def> reverse(string):> > string> => [string[i]> for> i> in> range> (> len> (string)> -> 1> ,> -> 1> ,> -> 1> )]> > return> ''.join(string)> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , s)> print> (> 'The reversed string(using reversed) is : '> , reverse(s))> |
>
>Sortida
subcadena del mètode java
The original string is : Geeksforgeeks The reversed string(using reversed) is : skeegrofskeeG>
Invertir la cadena a Python mitjançant la crida de funció
Funció per invertir una cadena convertint una cadena a una llista, després la va invertir i tornar-la a convertir en una cadena.
Complexitat temporal: O(n)
Espai auxiliar: O(1)
Implementació:
Python 3
# Function to reverse a string> # by converting string to list> # then reversed it and again convert it to string> def> reverse(string):> > string> => list> (string)> > string.reverse()> > return> ''.join(string)> s> => 'Geeksforgeeks'> print> (> 'The original string is : '> , s)> print> (> 'The reversed string(using reversed) is : '> , reverse(s))> # This code is contributed by Susobhan AKhuli> |
>
>Sortida
The original string is : Geeksforgeeks The reversed string(using reversed) is : skeegrofskeeG>