Peter Jordanson U javi bi bila lambda tipa priorityQueue.removeIf((e) -> e.imeStanje.equals(trenutno.imeStanje) && trenutno.f < e.f)
Joji A kak bi to onda radilo za usmjerene grafove? 3×3 nije usmjeren, al drugi grafovi koji se mogu pojavit jesu.
Retard00 E da to nisam napomenuo. Obrnuo sam sve smjerove na početku.
Kad koristim UCS za 3×3 mi izbacuje memory exceeded error… Vrti se par min i onda na heapu ponestane prostora ali neznam kako bih ovo optimirao bolje. Za sve mape koje koristim, koristim hash mapu i koristim priority queue za open. Closed ni nemam za UCS. Savjeti pliz?
Lumpy bez closed možeš koristiti algoritam samo za DAG, što ovo nisu
=== UNARCHIVE AND STRUCTURE === OK!
=== COMPILE === Failed! Error: Compile error: [java]: [WinError 2] The system cannot find the file specified
Jel neko ovo uspio riješit ili smo mi windows useri samo doomed?
Ducky već je to netko pitao ( Sicsile i Sicsile ) imam isti problem pa preporučam da im javiš
mornar Ica joj sori, nisam vidio da je netko odgovorio…. nova skripta radi!
Koliko dobijete za states visited u slučaju 3×3 za bfs i ucs?
Valentino 181366 za bfs, ucs mi ne radi za 3×3 još 😅
Valentino bfs 181366, ucs 181218
Kako najlakse sortirati po cijeni pa abecedno (Java) ?
MGJ Napravis komparator (ili nek ti Node implementira Comparable) koji će usporediti cijene sa Double.compare() i to vratiti, a ako su cijene jednake onda vraća vrijednost usporedbe imena stanja
Kako bi nasao path ako nisam koristio nikakvu strukturu za cvor u pythonu. Prijelaze citam iz dictionarya i nemam roditelje.
bjunolulz Mislim da moraš imat barem pointer na parent da bi mogao ispisat path
dobro da i mislio sam da sam sjebao
Kako ste u Pythonu 3×3 za bfs i ucs smanjili vrijeme izvođenja? Za open/queue koristim collections.deque a za visited koristim set al opet mi je vrijeme cca 2 min
dinoo ucs s heapq za open radi u par sekundi
dinoo koristi priorityQueue za opened da ne sortas i dictionarye za opened/closed skupove, mozes radit {“node.name”: “node”}, a mozes i {“node”: “node”} ako overridas hash funkciju, inace ti nece znat hesirat klasu Node ako ju imas. Znaci za opened odrzavas dvije strukture (priorityQueue i dict)
Diego Kako koristiš heap u A* algoritmu? Ne postoji efektivni način za mijenjanje vrijednosti elementa u heap-u, a da se ne poziva funkcija heapify()
gladiator ne trebaš mijenjati, samo sva stanja trpaš u heap i onda kad pop() sljedeće stanje na heapu trebaš imati while petlju koja će ti pop() stanja dok ne naiđe na stanje koje nije u visited tako ako imaš više istih stanja uvijek će ti na heapu prvo pop() s najmanjim putem moraš se sam pobrinut da ostala ista stanja s većim putem zanemariš