Chris8519 Geschrieben 4. Juli 2010 Geschrieben 4. Juli 2010 (bearbeitet) Hallo zusammen Ich mache eine technische Ausbildung und dieses Jahr habe ich Informatik als Fach dazubekommen, unser Lehrer denkt aber das jeder Programmieren kann was aber leider nicht so ist ... das sieht man an mir. Ich soll das Kanpsack problem in die nachfolgende struktur einbinden import java.util.*; public class Knapsack { static int b[] = {3, 4, 5, 8, 10}; static int w[] = {2, 3, 4, 5, 9}; public static void discreteKnapsack(int W, int b[], int w[]) { assert(b.length == w.length); int n = b.length; int V[][] = new int[n+1][W+1]; int i, j; /* hier */ System.out.println(V[n][W]); } public static void main(String[] args) { discreteKnapsack(20, b, w); } } Ich weis was das Kanpsack problem ist und was damit erreicht werden soll, aber wie man das programmiert und in das obige Programm einfügt weiß ich leider nicht. Ich wär sehr dankbar wenn sich das mal jemand anschauen könnte weil ich wirklich nicht weiß wie ich das machen könnte. Gruß Christoph Bearbeitet 4. Juli 2010 von flashpixx Code Tags eingefügt Zitieren
lupo49 Geschrieben 4. Juli 2010 Geschrieben 4. Juli 2010 Keiner wird dir hier den fertigen Quellcode präsentieren. Lies dir die Texte unten auf den Seiten durch, so dass du den Algorithmus verstehst und formuliere deinen eigenen Pseudocode. Den kannst du dann Schritt für Schritt zu Java übertragen. Rucksackproblem ? Wikipedia Rucksackproblem Auch wenn man nicht Programmieren kann/möchte, das Lesen von allgemein beschriebenen Lösungsverfahren bzw. Pseudocode kann auch ein Nicht-Programmierer. Zitieren
flashpixx Geschrieben 4. Juli 2010 Geschrieben 4. Juli 2010 Das Problem ist ganz klassisch und lässt mit hilfe eines LPs (lineares Programmieren) lösen. Dafür gibt es den Simplex-Algorithmus, den Du im Grunde nur implementieren musst Bitte verwende die Code-Tags für das posten von Quellcodes. Ich habe sie nachträglich eingefügt Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.