Forum » Programiranje » [Java] Rekurzija
[Java] Rekurzija
Yacked2 ::
Lep pozdrav,
a mi lahko kdo poišče kje ga lomim pri spodnji kodi:
Gre za reševanje sudokuja. Funkcija iskanje vrne String[] v obliki index:manjkajoca1manjkajoca2... za manjkajoča polja v sudokuju. Če eno prazno polje nima rešitve mi vrne "napaka". Funkcija Sestavi(cifre) vrne reši logične možnosti v cifre - reši polja v katere lahko gre samo ena rešitev. Izpis dobim takle:
Rekurzija: 43
Rekurzija: 42
brez rešitve, a mi kdo zaupa kje sem ga polomil.
Hvala
Yacked2
a mi lahko kdo poišče kje ga lomim pri spodnji kodi:
private static void Rekurzija(char[] cifre, String[] iskanje)
{
// prefiltriramo iskanje
if(iskanje.length > 1 && !iskanje[0].equals("napaka") && iskanje != null)
{
System.out.println("Rekurzija: "+ iskanje.length);
//iskanje razbijemo na indexe in manjkajoca stevila
int[] index = new int[iskanje.length];
String[] manjkajoce = new String[iskanje.length];
for(int razcep=0; razcep<index.length;razcep++)
{
String[] need = iskanje[razcep].split(":");
int foo = Integer.parseInt(need[0]);
index[razcep] = foo;
manjkajoce[razcep] = need[1];
}
//vnesemo v cifre
for(int i=0; i < manjkajoce[0].length();i++)
{
cifre[index[0]]=manjkajoce[0].charAt(i);
cifre = Sestavi(cifre);
if(check(cifre))
{
System.out.println("Sudoku resen!");
Izpisi(cifre);
System.exit(0);
}
else
{
String[] NovoIskanje = moznosti(cifre);
Rekurzija(cifre,NovoIskanje);
}
}
}
}Gre za reševanje sudokuja. Funkcija iskanje vrne String[] v obliki index:manjkajoca1manjkajoca2... za manjkajoča polja v sudokuju. Če eno prazno polje nima rešitve mi vrne "napaka". Funkcija Sestavi(cifre) vrne reši logične možnosti v cifre - reši polja v katere lahko gre samo ena rešitev. Izpis dobim takle:
Rekurzija: 43
Rekurzija: 42
brez rešitve, a mi kdo zaupa kje sem ga polomil.
Hvala
Yacked2
Korak naprej ni vedno ustrezen...sploh če si na robu prepada!
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | Java skeniranje map in podmapOddelek: Programiranje | 1293 (1182) | nightrage |
| » | [C#] Domača naloga - osnoveOddelek: Programiranje | 2664 (1881) | 11tomi12 |
| » | [C#] dodajanje direktorijev v treeview (rekurzija)Oddelek: Programiranje | 948 (810) | paco |
| » | [C#] Delo z okni - urejanje osebeOddelek: Programiranje | 1087 (959) | darkolord |
| » | [NALOGA] Java: RekurzijaOddelek: Programiranje | 1066 (880) | Spura |