Muszę sprawdzać, czy punkt na planszy ma możliwość przejścia na inne pole przechodząc po kolejnych pustych polach, czy droga jest otwarta.
Nie mam pojęcia jak to zrobić, czytałem o algorytmie A STAR (A*) ale nie wiem jak to zaimplementować i czy to się nada. Mógłby ktoś mi pomóc?
Nada się. Również nadałby się zwykły bfs / dfs, jednak złożoność A* jest lepsza. Nie wiesz jak zaimplementować?
http://4programmers.net/Forum/Og%C5%82oszenia_drobne
Zrobie to dla Ciebie za 150zł.
Nie chce gotowca, po prostu podpowiedź jak to zrobić.
albo BFS (działo mniejszego kalibru niż A*).
Opisz dokładniej swój problem: co to jest plansza, jak masz ją opisaną (jak wygląda opis grafu), czy wystarczy ci stwierdzenie że istnieje droga, czy musisz ją dokładnie opisać.
Najprawdopodobniej BFS będzie dla ciebie w sam raz by zaimplementować to samemu.
Jest po prostu plansza (tablica dwuwymiarowa kwadratowa) w której niektóre pola mam oznaczone jako puste, a niektóre jako 'coś'. Podaje współrzędne x i y tego coś, i miejsca pustego w które chce to przesunąć, i potrzebuję sprwdzić, czy da się tam przejść po kolejnych polach :)
@MarekR22 czyli w sumie potrzebuję tylko info, czy istnieje droga :)
Niestety nie mogę znaleźć jak BFS wygląda dla tablicy, jak dodawać do kolejki współrzędne pola tablicy
refresh
Przecież dostałeś ofertę. Pokaż kod - pomożemy. Jak sam nic nie zrobisz to nic nie dostaniesz.
Muszę wiedzieć jak wystartować, opisałem wyżej post w czym tkwi problem :/
No i dostałeś odpowiedzi. W czym problem teraz?
Nie mam pojęcia jak to zrobić, czytałem o algorytmie A STAR (A*) ale nie wiem jak to zaimplementować
To normalne, skoro nie znasz tego algorytmu. Rzadko który programista jest jasnowidzem. Musisz po prostu poszukac dobrego opisu algorytmu A* wraz z przykładami, czy źródłem i zobaczyć na czym on polega.
Choćby tutaj masz opis
http://www.gamedev.net/page/resources/_/technical/artificial-intelligence/a-pathfinding-for-beginners-r2003
Tu masz inny, bardziej z obrazkami i animacjami:
http://www.redblobgames.com/pathfinding/a-star/introduction.html
Poza tym generalnie Google (a star pathinding, albo a star gamedev itp.) , Stack Overflow i jedziesz...
Bartolinho10 napisał(a):
Niestety nie mogę znaleźć jak BFS wygląda dla tablicy, jak dodawać do kolejki współrzędne pola tablicy
Tablica poza informacją o "terenie"/"planszy" powinna zawierać informację czy BFS już odwiedził dane pole.
A do kolejki dodajesz strukturę opisującą pozycję na planszy.
@MarekR22 to lepiej BFS? Chyba mniej skomplikowany niż A* prawda?
No i jeśli chodzi o zaznaczanie w tablicy, które pole już zostało odwiedzone, to chyba mogę sobie zrobić pomocniczą tablicę booleanów np?
Obecna tablica moja to enumy.
Mam już to napisane, ale niezbyt chciałbym to udostępniać, bo jest to do mojego projektu. Mógłby ktoś rzucić okiem? Podesłałbym na PW :)