Encontrar el número mínimo de swaps para convertir una cadena en otra, donde las cadenas pueden tener caracteres repetidos

Estaba mirando a través de una pregunta de programación, cuando la siguiente pregunta de repente parecía relacionada.

¿Cómo convertir una cadena en otra cadena usando tan pocos swaps como sigue? Se garantiza que las cadenas son interconvertibles (tienen el mismo conjunto de caracteres, esto se da),Pero los personajes pueden repetirse.. Vi resultados web sobre la misma pregunta, sin que los caracteres se repitieran. Cualquiera de los dos caracteres en la cadena puede ser intercambiado.

Por ejemplo: "aabbccdd" se puede convertir a "ddbbccaa" en dos swaps, y "abcc" se puede convertir a "accb" en un swap.

¡Gracias!

Respuestas a la pregunta(4)

Su respuesta a la pregunta