Permutaatiot rekursiivisella funktiolla

Tulipa kokeiltua permutaatioiden tekemistä javalla. Netistä ei löytynyt ihan suoraa ratkaisua Javalle, joten piti itse kehitellä.

[java]
class Permutointi
{
static int metodikutsuja = 0, permutaatioita = 0;

public static void main(String[] args)
{
String merkkijono = ”abcde”;

permutoi(merkkijono, ””);

System.out.println(”Permutaatioita: ” + permutaatioita);
System.out.println(”Metodikutsuja: ” + metodikutsuja);

}

static void permutoi(String jono, String alku)
{
String uusi_alku=””, lyhyempi=””;

metodikutsuja++;

if (jono.length() == 0)
{
}
else if (jono.length() == 1)
{
System.out.println(alku+””+jono.charAt(0));
permutaatioita++;
}
else if (jono.length() == 2)
{
System.out.println(alku+””+jono.charAt(0)+””+jono.charAt(1));
permutaatioita++;

System.out.println(alku+””+jono.charAt(1)+””+jono.charAt(0));
permutaatioita++;
}
else
{
for (int i=0; i

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *