About
Announcements
Modules
Coursework
FAQ
Java API
|
- What is CS-3212 all about?
CS-3212 covers core computer science material which, along
with the material in CS-3313,
constitutes a great deal of the science in computer science.
It's hard to imagine an intellectual area that is more central to CS
than algorithms. We will study classic algorithms and problems
in CS - these algorithms will teach us about key problem-solving
techniques such as divide-and-conquer.
- Who should take this course?
The course is required for students in the B.S. program.
B.A. students are
welcome to take the course, as are EMSE students or others
who've had the pre-requisites.
- I haven't taken CS-2113. Can I take this course?
You will need a working knowledge of objects in Java
to handle the programming assignments. And you will need
the skill-level that comes with completing CS-2113.
Thus, if you've done CS-1112 but not CS-2113 but have
had considerable programming experience or other
programming courses, you ought to be able to take CS-3212.
Talk to me about it.
- I've taken CS-2113, but in another language. Can I take this course?
If you're not comfortable with Java, this course
might be exceptionally challenging. We are not going to teach
Java in the course.
- Is this a programming-intensive course?
Yes. Many universities teach their algorithms course without
much programming, focusing instead on the mathematical
analysis of their complexity. This course, on the other hand, introduces
you to algorithmic concepts with a strong focus on
implementation, based on the belief that there's nothing
like coding an algorithm to force one to understand the details.
- Is this a math-intensive course?
Not really. We will only reason about algorithmic
complexity at the high-level. There is some math involved
in understanding the basic terminology and definitions.
Your CS-1311 background is more than adequate for this course.
- What's covered in the labs? Is attendance mandatory?
The labs are a mix of review, extra help, and some new material.
Just as importantly, we will schedule lab quizzes. There will
be attendance points.
- What does "commitment" mean, and how do I earn those points?
Experience shows that students who aren't scoring well fall
into two categories: those who put in the time (are committed) and
those who don't. If you're doing well and are attending and
participating in your team, and taking your narrative-notetaking seriously,
you won't have to worry about these
points; you'll get them automatically.
If you fall behind but are nonetheless committed (strong attendance
in class and lab, strong participation in teams,
completing assignments ahead of time, excellent narrative notes),
you'll get some of these commitment points.
Questions about the (algtest) test environment (for those in the
course):
|