¿Qué es un mejor curso MIT OCW para un estudiante de segundo año: 6.006 o 6.046J? ¿Es útil tomar 6.042J para comprender los cursos anteriores?

Si usted es un principiante completo de la programación competitiva, los cursos MIT OCW no son necesarios para comenzar en la programación competitiva. Muchos problemas más fáciles son problemas matemáticos o lógicos ad hoc o requieren algoritmos bastante básicos. Gran parte del análisis riguroso que aprendería en un curso de algoritmos estándar no es tan relevante, aunque es bueno poder razonar rigurosamente sobre sus algoritmos / problemas.

6.042J es básicamente un curso de matemáticas discreto, así que creo que el punto es que mucha gente ingresa en los algoritmos sin los antecedentes / razonamiento lógico / matemático necesarios que 6.042 está destinado a desarrollar de alguna manera (consulte ¿Qué es eso de MIT? Curso de Análisis de Algoritmos (6.046) que lo hace difícil para muchos estudiantes?). Por supuesto, esto significa que es posible que no lo necesites si eres bueno en matemáticas; puede visitar Syllabus para 6.042J para obtener más información. Personalmente seguí el material 6.046J sin 6.042J ya que ya sabía todo lo que estaba cubierto en las competencias de matemáticas y similares.

En cuanto a qué clase (6.006 o 6.046J) es más difícil, creo que la respuesta de Victor Pontis a ¿Qué curso de algoritmo en el MIT es más útil si puedo tomar solo una: 6.854 o 6.046? Es un buen consejo. Pasé un tiempo mínimo mirando 6.006 cuando decidí entre los dos ya que en realidad ya estaba familiarizado con gran parte del material. 6.046J parece involucrar más diseño de algoritmos y material más difícil, pero no hay tanta diferencia entre los dos. Dicho esto, ambas clases son probablemente mucho más difíciles en MIT que las que se presentan en OCW.

Sin embargo, tenga en cuenta que a los comandantes de CS en MIT generalmente se les exige tomar ambos.