![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Witam, prosze o ocene algorytmu pod wszelkimi punktami.
Narazie jest to wersja testowa. Sam algorytm działa wg. mnie nieźle, jednak muszę ujednolicić system przestrzeni. Krótka instrukcja: Żółte pola: Puste Czerwone: Mur Niebieskie: Alternatywny wątek poszukiwań Zielone: Możliwe do przeszukania dla odpowiedniego wątku. Fioletowe: Wygenerowana ścieżka. Prezentacja: http://damnedland.pl/astar/class.php Kody(użycia i algorytmu) http://damnedland.pl/explorer/index.php?dir=Algorytmy |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Algorytm Dikstra rozważałem lecz on przeszukuje większy obszar co jest automatycznie wolniejsze(I wykorzystuje się go gdy nie znamy położenia celu, wtedy np zbieracz może przeszukać mapę żeby zebrać surowiec). Algorytm ten podałem jako jakikolwiek inny pracujący na grafie. A by taka praca była wygodna potrzebna jest odseparowanie struktury grafu od algorytmu i jego konkretnego wykorzystania. Cytat Co do tych wyjątkow to się zastanowie bo zawsze zwracałem false w przypadku niepowodzenia, ale wyjątki mogę zastosować. W przypadku niepowodzenia można co najwyżej zwrócić null. Wartość logiczna true/false jest już zarezerwowana dla funkcji mających zwrócić jedną z tych dwóch wartości. Oczywiście przez niepowodzenie nie mamy tutaj na myśli błędu - wtedy jedynym dopuszczalnym rozwiązaniem jest wyjątek. Cytat Crozin możesz mnie nakierować na jakieś informacje dokładniejsze o tym: W chwili obecnej wykorzystujesz tablice jako struktury danych. Jest to złe ponieważ jest to zbyt dynamiczna struktura danych. Nie ma ona określonych konkretnych elementów, a co gorsza powoduje odseparowanie struktury danych od konkretnych metod operacji na nich - co jest głównym założeniem i zaletą OOP. Jedyny ich plus w PHP to to, że jednak w wielu przypadkach szybsze niż rozwiązania obiektowe, ponieważ są wbudowane w samo PHP.
Cytat 2. Sam graf i jego wierzchołki powinny być raczej reprezentowane przez osobne obiekty - uprościłoby to i podniosło czytelność kodu. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 09:02 |