Python Dictionary para encontrar caracteres espejo en una string

Dada una string y un número N, necesitamos reflejar los caracteres desde la posición N-ésima hasta la longitud de la string en orden alfabético. En la operación de espejo, cambiamos ‘a’ por ‘z’, ‘b’ por ‘y’, y así sucesivamente.
Ejemplos: 
 

Input : N = 3
        paradox
Output : paizwlc
We mirror characters from position 3 to end.

Input : N = 6
        pneumonia
Output : pneumlmrz

Tenemos una solución existente para este problema, consulte Caracteres espejo de un enlace de string . Podemos resolver este problema en Python usando la estructura de datos del diccionario . El valor espejo de ‘a’ es ‘z’, ‘b’ es ‘y’, etc., por lo que creamos una estructura de datos de diccionario y mapeamos uno a uno la secuencia inversa de alfabetos en la secuencia original de alfabetos. Ahora recorra los caracteres desde la longitud k en la string dada y cambie los caracteres a su valor espejo usando un diccionario.
 

Python3

# function to mirror characters of a string
 
def mirrorChars(input,k):
 
    # create dictionary
    original = 'abcdefghijklmnopqrstuvwxyz'
    reverse = 'zyxwvutsrqponmlkjihgfedcba'
    dictChars = dict(zip(original,reverse))
 
    # separate out string after length k to change
    # characters in mirror
    prefix = input[0:k-1]
    suffix = input[k-1:]
    mirror = ''
 
    # change into mirror
    for i in range(0,len(suffix)):
         mirror = mirror + dictChars[suffix[i]]
 
    # concat prefix and mirrored part
    print (prefix+mirror)
          
# Driver program
if __name__ == "__main__":
    input = 'paradox'
    k = 3
    mirrorChars(input,k)

Producción: 
 

paizwlc

Complejidad temporal: O(n)

Espacio Auxiliar: O(n)

Publicación traducida automáticamente

Artículo escrito por Shashank Mishra y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *