Entre com qualquer Nome ou Número ou Ambos e Faça a Permutação

1 resposta
A

Entre com qualquer Nome ou Numero ou Ambos e Faça a Permutação...

public static void main(String args[]) 
   {
	 int n, start;
	 String nome;
	      	 
	 Scanner sc = new Scanner(System.in);  
	
     start = 0;
	
	 System.out.print("\nEntre com um Nome ou Numero ou Ambos: ");
	  nome = sc.next();
	   char lt[] = nome.toCharArray();
	    n = lt.length;
	   
	 Permutacao(lt, start, n);  
   }
  
  public static void Saida(char v[], int n)
   {
     for (int i = 0; i < n; i++)
 	  {
        System.out.printf("%c", v[i]);
      }
      
	 System.out.printf("\n");
   }

  public static void Permutacao(char v[], int start, int n)
   {
	 char aux; 
	  
	 if(start == n - 1)
	  {
	    Saida(v, n);
	  } else
	     {
	       for (int i = start; i < n; i++)
			{
              aux = v[i];
		       v[i] = v[start];
                v[start] = aux;
                 Permutacao(v, start + 1, n);
                  v[start] = v[i];
                   v[i] = aux;
	        }
		 }
   }

Aqui deu tudo certo...Avaliem....

Exemplo

Digitado: Ja19

Ja19
Ja91
J1a9
J19a
J91a
J9a1
aJ19
aJ91
a1J9
a19J
a91J
a9J1
1aJ9
1a9J
1Ja9
1J9a
19Ja
19aJ
9a1J
9aJ1
91aJ
91Ja
9J1a
9Ja1

1 Resposta

asousaj

Cara poderia ter mantido o tópico anterior , né?
http://guj.com.br/java/259801-entre-com-o-nome-java-e-faca-a-permutacao#1355325

Vi que seu código melhorou, agora funciona com 3 4 ou 5 caracteres… se se comportar diferente.

Criado 3 de dezembro de 2011
Ultima resposta 3 de dez. de 2011
Respostas 1
Participantes 2