Oon tällä hetkellä ohjelmoimassa ja testaamassa perinteistä "Knapsack problem" ongelmaa PHP:llä.
Olen käyttänyt Rosettacodesta löytyvää PHP esimerkkiä (sitä pidempää).
http://rosettacode.org/wiki/Knapsack_problem/0-1#PHP
Olen lisännyt koodiin input-käyttöliittymän, jolloin käyttäjä voi itse vaihtaa säkin kestävyyden.
Tämän jälkeen koodi PHP ottaa kopin..
## Solve
$workload = $_GET['workload'];
list ($m4,$pickedItems) = knapSolveFast2($w4, $v4, sizeof($v4) -1, $workload,$m,$pickedItems);
Ja tämä on kaikki muutos, jonka olen koodiin tehnyt.
KYSYMY:
Miksi koodi ei osaa tulostaa vastausta esiasetettuun taulukkoon, mikäli säkin kantavuudeksi on käyttöliittymässä syötetty pienempi luku kuin 30?
Täällä voi testata ohjelmaa käytännössä:
http://users.metropolia.fi/~velipekr/index.php