Siam nombró los siguientes algoritmos más importantes del siglo XX:
1946: El algoritmo de Metrópolis para Montecarlo . Mediante el uso de procesos aleatorios, este algoritmo ofrece una forma eficiente de encontrar respuestas a problemas que son demasiado complicados para resolverlos con exactitud.
1947: Método simplex para programación lineal . Una solución elegante a un problema común en la planificación y la toma de decisiones.
1950: Método de iteración del subespacio de Krylov . Una técnica para resolver rápidamente las ecuaciones lineales que abundan en la computación científica.
1951: El enfoque de descomposición de los cálculos matriciales . Un conjunto de técnicas para álgebra lineal numérica.
1957: El compilador de optimización de Fortran . Convierte el código de alto nivel en un código eficiente legible por computadora.
1959: Algoritmo QR para calcular valores propios . Otra operación de matriz crucial se hizo rápida y práctica.
1962: Algoritmos de clasificación rápida para ordenar . Para el manejo eficiente de grandes bases de datos.
1965: Transformada rápida de Fourier . Quizás el algoritmo más ubicuo en uso hoy en día, descompone las formas de onda (como el sonido) en componentes periódicos.
1977: Detección de relación de enteros . Un método rápido para detectar ecuaciones simples satisfechas por colecciones de números aparentemente no relacionados.
1987: Método multipolar rápido . Un avance en el tratamiento de la complejidad de los cálculos de n cuerpos, aplicado en problemas que van desde la mecánica celeste hasta el plegamiento de proteínas.
Personalmente, reemplazaría la detección de relación de enteros con PageRank .