Als we alle mogelijkheden controleren, zullen we de oplossing zeker vinden. We maken dan een algoritme dat correct is. Natuurlijk is zo'n algoritme niet efficiënt, want het kan heel lang duren voordat de oplossing gevonden is. Soms zo lang dat we de oplossing in de praktijk misschien niet vinden.
Een algoritme dat alle mogelijkheden langsgaat, heet een bruteforce-algoritme.
In de praktijk probeer je altijd te voorkomen om een bruteforce-algoritme te gebruiken. Bij het rugzakprobleem is bruteforce nauwelijks een oplossing. Want als je 30 verschillende dozen hebt om uit te kiezen, moet je al meer dan 1 miljard mogelijkheden controleren. Voor kleine problemen is bruteforce soms wel een goede oplossing.