Efficacy of brute-force algorithms
A combination lock requires you to input three numbers from, say, 0 to 9 to open the lock. One approach to open it if you forget the password is to try (0, 0, 0), then (0, 0, 1), then (0, 0, 2), and so on. This method is guaranteed to succeed if we have enough patience to test all permutations of 0 through 9 for each of the three numbers. This is a brute-force algorithm: a trial-and-error approach to solving a problem where you simply guess the answer over and over until you get it right. Of course, this is very tedious for a combination lock, but brute-force approaches are actually sometimes practical, especially when using computers.
Example – Caesar cipher
Roman emperor and general Julius Caesar is said to have been one of the earliest users of encryption in the form of coded messages. Now called the Caesar cipher, his method was to write the message and then shift the alphabet by some specified number of letters. For example, he might...