Pregunta de entrevista de Lemonade Insurance

Given a string, return the next lexicographic string with the same letters (swap letters)