| Algoritme :: knapzak Algorithm :: Knapsack is een brute-force-algoritme voor het knapzakprobleem. |
Download nu |
Algoritme :: knapzak Rangschikking & Samenvatting
- Vergunning:
- Perl Artistic License
- Naam uitgever:
- Alexander Anderson
- Uitgever website:
- http://search.cpan.org/~andale/Algorithm-Knapsack-0.02/lib/Algorithm/Knapsack.pm
Algoritme :: knapzak Tags
Algoritme :: knapzak Beschrijving
Algoritme :: Knapsack is een brute-force-algoritme voor het knapzakprobleem. Algoritme :: Knapsack is een brute-force-algoritme voor het Knapsack-probleem. Synopsis Gebruik algoritme :: Knapsack; Mijn $ knapzak = algoritme :: knapseel-> nieuw (capaciteit => $ capaciteit, gewichten => @weights,); $ Knapack-> Compute (); Foreach My $ Solution ($ Knapack-> Solutions ()) {Foreachy My $ Index (@ {$ solution}) {# Doe iets met $ gewichten }} Het probleem van het knapzak vraagt, gezien een reeks items van verschillende Gewichten, zoek een subset of subsets van items zodanig dat hun totale gewicht niet groter is dan een bepaalde capaciteit, maar zo groot mogelijk. Deze module lost een speciaal geval van het 0-1-knapzakprobleem op wanneer de waarde van elk item gelijk is aan zijn gewicht. Capaciteit en gewichten zijn beperkt tot positieve gehele getallen.ThodsNew My $ Knapack = algoritme :: Knapsack-> Nieuw (capaciteit => $ capaciteit, gewichten => @weights,); creëert een nieuw algorith :: Knapsack-object. Waarde van $ Capaciteit is een positief geheel getal en @weights is een verwijzing naar een reeks positieve gehele getallen, die elk minder zijn dan $ capaciteit.compute $ knapzak-> -bereiding (); iteraten over alle mogelijke combinaties van gewichten om de knapzak op te lossen probleem. Merk op dat de tijd om het probleem op te lossen exponentieel met betrekking tot het aantal items (gewichten) om uit te kiezen. Solutions My @Solutions = $ Knapack-> Solutions (); Retourneert een lijst met oplossingen. Elke oplossing is een verwijzing naar een reeks indexen met @weights. Vereisten: · Perl
Algoritme :: knapzak Gerelateerde software