Hay una pequeña paradoja en esta pregunta ya que, en cierto sentido, una vez que un algoritmo se utiliza en la práctica, la gente ya no lo llamará ciencia de la computación teórica.
Puedes ver algunos de los míos en el video publicado por la respuesta de Obinna. Éstas incluyen:
* una variante del problema del vendedor ambulante para crear títulos para documentos generados por máquina
* una variante diferente de TSP para optimizar el diseño del código durante la compilación
* códigos de red lineales aleatorios para transmitir información a través de redes
* hashing consistente para implementar tablas hash distribuidas (para Akamai y otros sistemas peer to peer, así como la base de datos Cassandra)
* flujo máximo para determinar la estructura de las redes genéticas
Puede encontrar documentos sobre esos y otros ejemplos que he trabajado en mi página de publicaciones http://people.csail.mit.edu/karg… si filtra en “Aplicaciones de la teoría” en el filtro “categoría”.
Hay toneladas de otras aplicaciones; Solo puedo enumerar algunos:
* El hash perfecto te permite crear tablas hash sin colisiones, lo que garantiza una búsqueda en tiempo constante
* desde sus orígenes como una herramienta para ayudar a resolver problemas logísticos para el Ejército de EE. UU. en la Segunda Guerra Mundial, la programación lineal se ha utilizado para la optimización en casi todas las industrias imaginables. Hace muchos años recuerdo a Bill Pulleyblank en IBM diciéndome cómo su grupo había ahorrado a una fábrica de acero decenas de millones de dólares al año al calcular una mejora de un porcentaje en la forma en que cortaban sus rollos de acero para completar los pedidos.
* Cada aerolínea resuelve problemas de optimización combinatoria masiva para programar sus vuelos y tripulaciones
* Lo mismo es cierto en otros dominios de transporte como la programación de trenes; ver por ejemplo http://ifors.org/web/martin-grot…
* El trabajo de Al Roth sobre problemas de correspondencia revolucionó el sistema de donación de riñones en los EE. UU. (Y lo ayudó a ganar un premio Nobel)
* Las estructuras de datos de geometría computacional (particiones de espacio binario, diagramas voronoi, estructuras de datos de búsqueda de rango ortogonal, etc.) sustentan gran parte de los gráficos de computadora que impulsan nuestras películas y videojuegos
* Del mismo modo, las triangulaciones de Delaunay son importantes para los métodos de elementos finitos utilizados en muchas simulaciones (túneles de viento, dinámica de fluidos, etc.)
* Los algoritmos de flujo máximo se utilizan en técnicas de “corte de gráficos” en visión artificial
- Cómo escribir un programa en C para verificar si para cualquier triplete entero (x, y, z) y otro entero n, [matemática] n ^ x + n ^ y = n ^ z [/ matemática] ocurre para (a, b) siendo la entrada donde [matemáticas] a \ leq n \ leq b [/ matemáticas]
- ¿Qué método se utiliza para diseñar una jaula antivuelco, un método de viga o un método de carcasa? Si es así, ¿por qué?
- Cómo implementar un programa en C para un polinomio como un tipo de datos abstractos (ADT)
- Teoría estadística: ¿Cuáles son algunos resultados teóricos interesantes relacionados con la Estimación de la densidad del núcleo?
- ¿Cómo decimos que un lenguaje no bombeable no es regular?