Hátizsák probléma dinamikus algoritmusának működése?
függvény HátizsákDP
ciklus t 0-tól N-ig
F[t,0] 0
ciklus vége
ciklus h 1-től Wmax-ig
F[0,h] 0
ciklus vége
ciklus t 1-től N-ig
ciklus h 1-től Wmax-ig
ha h ≥ wt akkor
F[t,h] max(F[t-1,h], F[t-1,h-wt] + pt)
különben
F[t,h] F[t-1,h]
elágazás vége
ciklus vége
ciklus vége
vissza F[N,Wmax]
függvény vége
függvény HátizsákDPEredmény(F)
OPT [hamis,hamis, … ,hamis]
t N
h Wmax
ciklus amíg (t > 0) ˄ (h > 0)
ha F[t,h] ≠ F[t-1,h] akkor
OPT[t] igaz
h h - wj
elágazás vége
t t - 1
ciklus vége
vissza OPT
függvény vége
A kis kockák nyílakat jelülnek és értékadást jelentenek. Köszönöm a segítséget.
Remek.
És olyat tudsz, hogy a füleddel rajzolsz valamit?
Oké, de mi a kérdés?
Nem mellesleg:
* a nyilak helyett használhatsz -> jelölést, értékadásnak meg az egyenlőségjelet, vagy ha jobban szereted a Pascal-beli jelölést, ott a :=
* tessék a forráskód/pszeudokód publikálására kódmegosztó oldalt - hastebin.com, pastebin(pont)com, ghostbin.com - használni, az megőrzi a kód indentálását, áttekinthetővé teszi azt
Gondolom, azért kellett Négyest lepontozni, mert túl jó poént pocsékolt a trehányul ideköpött kérdésre...
Szép dolog, hogy előre megköszönöd a nemt'tom mihez remélt segítséget, de az udvariasságnak az illékony szavakon túl kézzelfoghatóbb formái is léteznek. Amióta a Csere funkciót feltalálták, nem egészen érthető, ha a nyilakat kis kockák jelölik, nem pedig mondjuk nyilak -- igaz, az néhány kattintással többet igényelt volna, mint az együgyű másolás/beillesztés, és minek is fárasztottad volna magadat vele, mikor odahaza külön-külön is megcsinálhatja mindenki? Mint számtalan egyéb programozós kérdésnél láthattad, az indentálás elvesztése és a fölöslegesen beszúrt üres sorok miatt nem szerencsés, ha ide rakod be a programot, legkevésbé pedig, ha a kérdésbe írod. Mindezeken felül: Valóban nem tettél fel értelmes kérdést, akkor meg nem lett volna még egyszerűbb ki sem írni az egészet?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!