"Computer science is not about machines,
in the same way that astronomy is not about telescopes."
-- Michael R. Fellows (1991)
"Computer SCIENCE and Mathematics in the Elementary Schools"
This course is an introduction to algorithms and data structures. It will be taught in English and with the Java programming language, and will be taught using the language, but it is not about the language. Mastery of Java syntax as taught in Informatik I is assumed. For those who can already program in Java and need a challenge, the exercises can be done in Java AND Python and a comparison of the results handed in for the exercises.
You should have learned primitive data types, statements and rules, interfaces and classes in Informatik I. We will now be looking at more complex data structures and algorithms which work on these data structures. Even if many modern programming enviornments offer libraries that implement these algorithms and data structures, as computer scientists it is important for you to understand how they work. In particular we will be concentrating on how to solve (small) problems using a programming language. At the end of the semester I will give an introduction to Python so that you start to get a feel for this type of programming language.
A major component of the class will be a weekly, two-hour, exercise laboratory session. There will be pre-labs, and I expect you to submit a report togther with one of your fellow students. We will be doing pair programming in the lab, as last semester. Your lab partners will be chosen anew by random choice every week. The lab report is due the night before the next laboratory. Much of the lab work will be spent in collaborative work on program development, with an emphasis on student-student interaction and student-student teaching, facilitated and enriched by the course teachers.
The following links offer more information about the course
|Last change: 2019-10-09 12:02|