Computer programming (CSE101) introduces students (with or without previous programming experience) to the fundamentals of computer programming in Python, with applications across the sciences. In this course, students will explore fundamental algorithms and data structures, up to and including binary trees, using a mixture of procedural, recursive, and object-oriented techniques. Upon completion of this course, students will have a solid foundation in the culture and practice of modern programming, and the basic skills to solve real-world problems using efficient, well-written programs and open-source tools. These foundations will be extended and completed in CSE102 and CSE103.
- Profesor: Berkemer Sarah
- Profesor: Blazy Olivier
- Profesor: Haucourt Emmanuel
- Profesor: Pogudin Gleb
- Profesor: Smith Benjamin
- Profesor: Blazy Olivier
- Profesor: Haucourt Emmanuel
- Profesor: Strub Pierre-Yves
- Profesor: Will Sebastian
- Profesor: Zeilberger Noam
An algorithm is a sequence of instructions that allows us to solve a problem using a finite number of steps. As such, algorithms are the procedures that we use to “compute”. We study algorithms to know what can actually be computed, in theory and in practice, and to find out how efficiently it can be done.
Introduction to Algorithms (CSE103) is an initiation into the art and science of algorithms. This course will train students in how to think about algorithms, how to solve a wide range of problems by means of a number of algorithmic techniques, how to rigorously compare different algorithms and predict their performance, and how it is possible to formally prove that a program implementing an algorithm is correct.
- Profesor: Beguinot Julien
- Profesor: Berkemer Sarah
- Profesor: Blazy Olivier
- Profesor: Chiche Nathan
- Profesor: Haucourt Emmanuel
- Profesor: Hummes Flores Bernardo
- Profesor: Zhioua Sami
- Profesor: Blazy Olivier
- Profesor: Haucourt Emmanuel
- Profesor: Rohmer Damien