| Algoritmo :: zaino Algoritmo :: Knapsack è un algoritmo di forza bruta per il problema dello zaino. |
Scarica ora |
Algoritmo :: zaino Classifica e riepilogo
- Licenza:
- Perl Artistic License
- Nome editore:
- Alexander Anderson
- Sito web dell'editore:
- http://search.cpan.org/~andale/Algorithm-Knapsack-0.02/lib/Algorithm/Knapsack.pm
Algoritmo :: zaino Tag
Algoritmo :: zaino Descrizione
Algoritmo :: Knaplack è un algoritmo di forza bruta per il problema dello zaino. Algoritmo :: Knaplack è un algoritmo di forza bruta per il problema del maschio.synopsis usa l'algoritmo :: zaino; My $ Knapsack = Algoritmo :: Knaplack-> Nuovo (Capacità => $ Capacità, Pesi => @weights,); $ Knapsack-> Compute (); foreach My $ Solution ($ Knapsack-> Solutions ()) {foreach My $ index (@ {$ soluzione}) {# Fai qualcosa con $ pesi }} Il problema dello zaino chiede, dato un insieme di elementi diversi Pesi, trovare un sottoinsieme o sottoinsiemi di elementi tali che il loro peso totale non è più grande di una certa capacità, ma il più grande possibile. Questo modulo risolve un caso speciale del problema dello zaino 0-1 quando il valore di ciascuna voce è uguale al suo valore di ciascuna voce peso. Capacità e pesi sono limitati a numeri interi positivi. MethodsNew My $ Knapsack = Algoritmo :: Knaplack-> Nuovo (Capacità => $ Capacità, Pesi => @weights,); Crea un nuovo Algorith :: Object. Il valore della capacità $ è un numero intero positivo e @weights è un riferimento a una serie di numeri interi positivi, ognuno dei quali è inferiore a $ Capacità.comPute $ Knapsack-> Compute (); Itera su tutte le possibili combinazioni di pesi per risolvere il zaino problema. Si noti che il tempo di risolvere il problema cresce in modo esponenziale rispetto al numero di elementi (pesi) tra cui scegliere. Leuzioni my @solutions = $ knapsack-> soluzioni (); restituisce un elenco di soluzioni. Ogni soluzione è un riferimento a una serie di indici a @weight. Requisiti: · Perl.
Algoritmo :: zaino Software correlato