In <a href="http://carma.newcastle.edu.au/jon/digits.pdf">100 Digits Challenge: an Extended Review (March 2005)</a> Jon Borwein lists "the 20th century's Top Ten" algorithms: (1) 1946: *The Metropolis Algorithm for Monte Carlo*. Through the use of random processes, this algorithm offers an effcient way to stumble toward answers to problems that are too complicated to solve exactly. (2) 1947: *Simplex Method for Linear Programming*. An elegant solution to a common problem in planning and decision-making. (3) 1950: *Krylov Subspace Iteration Method*. A technique for rapidly solving the linear equations that abound in scientific computation. (4) 1951: *The Decompositional Approach to Matrix Computations*. A suite of techniques for numerical linear algebra. (5) 1957: *The Fortran Optimizing Compiler*. Turns high-level code into efficient computer-readable code. (6) 1959: *QR Algorithm for Computing Eigenvalues*. Another crucial matrix operation made swift and practical. (7) 1962: *Quicksort Algorithms for Sorting*. For the efficient handling of large databases. (8) 1965: *Fast Fourier Transform*. Perhaps the most ubiquitous algorithm in use today, it breaks down waveforms (like sound) into periodic components. (9) 1977: *Integer Relation Detection*. A fast method for spotting simple equations satisfied by collections of seemingly unrelated numbers. (10) 1987: *Fast Multipole Method*. A breakthrough in dealing with the complexity of $n$-body calculations, applied in problems ranging from celestial mechanics to protein folding. Please refer to the original paper for many examples illustrating Jon's point.