--- title: Brute Force Algorithms localeTitle: Algoritmos de Força Bruta --- ## Algoritmos de Força Bruta Algoritmos de força bruta referem-se a um estilo de programação que não inclui nenhum atalho para melhorar o desempenho, mas, em vez disso, depende da capacidade de computação para tentar todas as possibilidades até que a solução para um problema seja encontrada. Um exemplo clássico é o problema do vendedor ambulante (TSP). Suponha que um vendedor precise visitar 10 cidades em todo o país. Como se determina a ordem em que as cidades devem ser visitadas de forma que a distância total percorrida seja minimizada? A solução de força bruta é simplesmente calcular a distância total para cada rota possível e depois selecionar a mais curta. Isso não é particularmente eficiente porque é possível eliminar muitas rotas possíveis por meio de algoritmos inteligentes. Outro exemplo: uma senha de 5 dígitos, no pior dos casos, levaria 10 5 tentativas para quebrar. A complexidade temporal da força bruta é **O (n \* m)** . Então, se fôssemos procurar por uma sequência de caracteres 'n' em uma sequência de caracteres 'm' usando força bruta, isso nos levaria n \* m tentativas. #### Mais Informações: [Wikipedia](https://en.wikipedia.org/wiki/Brute-force_search)