Matemáticas generales que uno debe saber antes de tomar la clase de algoritmo? Especialmente para estudiantes con antecedentes no informáticos.

Lo mejor de una clase introductoria en algoritmos, complejidad o similares es que la mayor parte es combinatoria. Parafraseando a Timothy Gowers, es elemental . Eso no quiere decir que sea fácil, pero la mayoría de los principios que usará son, en cierto sentido, básicos y bastante comprensibles para un niño de 10 años. Por lo tanto, es necesario conocer operaciones aritméticas básicas y contar. Voila

Como otro ejemplo, Sanjeev Arora, en su tesis que presenta el teorema de PCP extremadamente profundo, declaró que el requisito mínimo para leer la tesis sería la simple declaración:

“Un polinomio univariado no nulo de grado d tiene como máximo d raíces en un campo”.

Por supuesto, no menciona que él es un genio, como lo son la mayoría de las personas que trabajaron en el tema.

También ayuda si tiene algo de experiencia con las estructuras de datos, aunque si se trata de una clase introductoria, la mayoría de las estructuras de datos que necesita se introducirán en el acto, junto con el algoritmo que se está enseñando.

Sin embargo, lo único que no es del todo elemental es la teoría de la probabilidad. Apréndelo, conócelo, conviértelo en tu religión. Las palabras más poderosas en el análisis de algoritmos, según yo, son ‘linealidad de expectativa’. Sigue ese mantra y estarás preparado en el camino hacia la grandeza … o un gran conocimiento, en cualquier caso.

More Interesting

¿Cómo mantiene Google en secreto su algoritmo de sus empleados cuando son sus empleados quienes lo prueban?

Cómo agregar un contador de comparación para combinar la clasificación en Python

¿Cómo es codicioso el algoritmo de Kruskal?

¿Qué algoritmo usa Google Knowledge Graph? ¿Con qué precisión funciona?

¿Existe un algoritmo que lo ayude a visualizar las distancias entre los n nodos de manera óptima?

¿Cómo se debe aprender la codificación, haciendo algoritmos, desde el nivel básico, dado que no tiene experiencia en codificación? (especialmente desde el punto de vista de la colocación y también dado el hecho de que me queda un año para que comience mi temporada de colocación).

¿Qué tipo de algoritmo utiliza Google para clasificar los correos?

¿Qué algoritmo se debe usar para encontrar que hay una conexión en cada dos vértices en un gráfico dirigido?

¿Cuál es el mejor y más fácil algoritmo de búsqueda?

¿El interés por los algoritmos genéticos y evolutivos está en declive?

¿Alguien ha utilizado un algoritmo genético para resolver la ecuación de Schrodinger (o alguna ecuación diferencial)?

¿Qué algoritmo puedo usar para generar enteros (pseudo) aleatorios con una duración de ciclo infinito?

¿Cómo prueban sus algoritmos sitios como Quora en un pequeño número de usuarios, mientras que el resto no se ve afectado?

Cómo crear una matriz de intervalos de fechas a partir de una matriz de fechas estáticas en JavaScript

Suponiendo una memoria infinita, ¿siempre es posible aumentar la complejidad de cualquier programa sin introducir redundancia?