Espero que esto ayude,
cree una cadena temporal “permutación” e inicialícela en “”.
Tomemos un ejemplo de la cadena “ABC” (original = “ABC”, permutación = “”)
- ¿Cuáles son las ventajas de la agrupación de K-Means?
- Cómo implementar un algoritmo de sincronización de reloj Berkeley en C ++
- ¿Qué es un programa Java bueno y simple para ordenar números en orden ascendente?
- En el algoritmo EM, ¿debería aumentar el valor de la función objetivo a través de cada M-STEP?
- ¿Debo aprender C ++ ahora que sé cómo implementar algoritmos básicos de ML en Python, o debería seguir con scikit-learn?
- Corte el primer carácter de la cadena original y póngalo en la cadena de “permutación”.
Ahora, original = “BC”, permutación = “A” - Corte el primer carácter de la cadena original y póngalo en la cadena de “permutación”.
Ahora, original = “C”, permutación = “AB” - Corte el primer carácter de la cadena original y póngalo en la cadena de “permutación”.
Ahora, original = “”, permutación = “ABC” - No quedan más caracteres en la cadena original y está en blanco, obtuvimos nuestra primera permutación “ABC”.
Si la llamada anterior de eliminar los caracteres de la cadena original y agregarla a la permutación se hace recursiva y en bucle desde i = 0 a la longitud de la cadena original , obtendremos una llamada recursiva como se muestra a continuación,
Para una explicación detallada con el programa:
Escriba un programa para imprimir todas las permutaciones de una cadena dada sin repetición. (La repetición de caracteres no está permitida).