Textbook: Algorithm Design by Jon Kleinberg and Eva Tardos, Pearson and Addison Wesley. 2006, ISBN 0-321-29535-8.
Your first task is to sign up for Piazza by the second class meeting.
Final Exam 1:00 pm - 3:00 pm F Shillman Hall 420 Apr 20, 2012
Piazza for Algorithm Students | Piazza Interface for Algorithmic Problem_Solving | Course Directories | Syllabus | WolframAlpha | Blackboard .
Learning by doing You oppose claims made by others and you defend your own claims. This tests your skills in the playground. The quality of your attacks and defences determines your reputation.
The quantifier game is fun. It is hard fun. Even if you play against yourself.
Playing the quantifier game is different than getting together with other students and solving problems. You follow a structured protocol to guide your thinking in the right direction to solve the problem. Once the problem is solved, the quantifier game becomes uninteresting and you stop playing.
The quantifier Game in Action Recipe to teach constructive topic D: Define a playground for D and have the students play. The winning students are teachers and help the other students learn the material through skill demonstrations. The winning students demonstrate superior knowledge in domain D in the context of the given playground. It is important to notice that in order to win in the game you only need clever algorithms. You don't need a proof that they are correct. The text book and lectures will show you how to reason about correctness.
Knowledge about algorithm design turns out to be pivotal to your career as some interesting and desirable companies first screen students with algorithm questions before they advance to later stages in the interview process.
Lectures | Office Hours .
The Quantifier Game
The Essence of the Quantifier Game: Rules
This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. If you have any problems or feedback for the developers, email firstname.lastname@example.org. Find our class page at: http://www.piazza.com/northeastern/winter2012/cs4800. You should actively participate in class with questions and answers. Make active use of Piazza: when you know a good answer please enter it on Piazza.
Computational Patterns This website makes a good attempt to capture algorithmic knowledge in the form of patterns (e.g., Dynamic Programming).
Dictionary of Algorithms and Data Structures (NIST)