![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
Witam, pamięta ktoś z Was może taka mała, stara gierkę (nie komputerową (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ), która była zbudowana z 15 ponumerowanych kolejno kwadracików na planszy 4 na 4 i chodziło w niej o ułożenie tych kwadracików w kolejności ruszając je tylko po jednym pustym polu? Otóż napisałem implementacje tej gry w php i wypadałoby wiedzieć chociaż jak to się zwie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Może działający skrypt przypomni komuś o jaka grę chodzi...
http://www.crash.gaa.pl/gra.php Ten post edytował crashu 22.06.2005, 12:24:16 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Zaczalem kodowac, przerabialem calkowicie sktypt (m.in. indexacja od zera - tak jak w twojej najnowszej wersji) zeby byl latwiejszy do operacji i ugrzezlem na errorach.
Cytat Ja też pracuje nad poprawkami, i w sumie wymyśliłem takie mieszanie: Tez tak chcialem zrobic: szukam findEmpty() potem wybieram jedna z sasiadujacuch komorek (jesli istnieja) i przesuwam ja, a potem uaktualniam pustaKomorke (to bedzie ta z ktorjed dokonano przesuniecia). rows = cols = n 1. szukanie findEmpty(): O( n^2 ) PETLA( X - powtorzen) 2.1. znalezienie sasiednich komorek: O( 4 ) = O( 1 ) 2.2. zamiana: O( 1 ) 2.3. aktualizacja pustej komorki O( 1 ) ogolnie: O( n^2 ) + O( X ), (moglem sie pomylic -- mam tyko 4.0 z tego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) czyli calkiem szybko: findEmpty() tylko raz a potem proste operacje. U ciebie jest OOOOOOO: size = n O( n^3 ) * O( n^2 ) = O( n^5 ) -- duuuzo przy czym aby porownac oba alg. X = n^3 i wtedy mam: O( n^3 ) ---------------- 189/149s (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) --------------- chyba przydalo by sie przeniesc wersje Cudiego do nowego watku Ten post edytował dr_bonzo 23.06.2005, 22:03:27 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 09:40 |