Java - Permutacion de palabra con letras repetidas

 
Vista:
sin imagen de perfil

Permutacion de palabra con letras repetidas

Publicado por Priscila (3 intervenciones) el 28/10/2017 16:08:36
El problema consiste en realizar un programa que calcule los ordenamientos diferentes que se pueden formar con las letras de la palabra "AMAR", las posibilidades son 12 (AMAR, AMRA, ARMA, ARAM, AAMR, AARM, MARA, MAAR, MRAA, RMAA, RAAM, RAMA)

package ejemplos;

public class CombinacionAmar {
public static void main(String[] args) {
String palabra="AMAR";
String salida="";
int opciones=1;
for (int i = 1; i <=palabra.length(); i++) {
opciones*=i;
}
System.out.println("Numero de permutaciones:"+opciones);
char palabras[]=palabra.toCharArray();
for (int i = 0; i < opciones; i++) {
System.out.println(palabras);
char t=palabras[i%(palabras.length-1)];
palabras[i%(palabras.length-1)]=palabras[palabras.length-1];
palabras[palabras.length-1]=t;
}

}
}


Me da 24 combinaciones
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Sebastian
Val: 282
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Permutacion de palabra con letras repetidas

Publicado por Sebastian (91 intervenciones) el 29/10/2017 04:48:53
Am... es que en el ciclo debes contar las letras que se repiten para que te funcione
para este caso se repiten 2 letras

1
for (int i = palabra.length(); i >2; i--) {

de este modo el ciclo funcionara
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Permutacion de palabra con letras repetidas

Publicado por Priscila (3 intervenciones) el 29/10/2017 18:09:15
Si, funciona! Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar