Video: Privacy, Security, Society - Computer Science for Business Leaders 2016 2024
En brute force løsning er en der du prøver hvert mulig svar, en om gangen for å finne det beste mulige svaret. Det er grundig, så mye er sikkert, men det slipper også tid og ressurser i de fleste tilfeller. Testing hvert svar, selv når det er lett å bevise at et bestemt svar ikke har noen sjanse for suksess, slipper tid som en algoritme kan bruke på svar som har en bedre sjanse for suksess.
I tillegg tester de ulike svarene ved hjelp av denne tilnærmingen generelt ressurser, for eksempel minne. Tenk på det på denne måten: Du vil bryte kombinasjonen for en lås, så du begynner på 0, 0, 0, selv om du vet at denne kombinasjonen ikke har noen sjanse til å lykkes gitt de fysiske egenskapene til kombinasjonslås. En brute-force løsning ville fortsette med å teste 0, 0, 0 uansett og deretter gå videre til like latterlig 0, 0, 1.
Det er viktig å forstå at hver løsningstype kommer med fordeler, noen ganger ganske små. En brute-force løsning har en slik fordel. Fordi du tester hvert svar uansett, trenger du ikke å utføre noen form for forbehandling når du arbeider med en brute force-løsning. Tiden som er lagret i å hoppe over forhåndsbehandlingen, er imidlertid ikke sannsynlig å betale tilbake tiden som er tapt i å prøve hvert svar. Du kan imidlertid finne anledning til å bruke en brute-force løsning når
- Å finne en løsning, hvis en eksisterer, er viktig.
- Problemstørrelsen er begrenset.
- Du kan bruke heuristics for å redusere størrelsen på løsningen.
- Enkel implementering er viktigere enn hastighet.