Basic Algorithms, spring 2011
The Tuesday sessions are for recitation, and attendence is a course requirement.
T, Th, 2-3:15, now in Room 1302
T,    9:30-10:45, still in Room 102
Office: 330WWH. Office Hours: T 3:15-4:15 and by appointment.
Section Leader: Vasileios Gkatzelis
Office Hour: by appointment and Wednesdays, 6-7PM.
Location: 715 Broadway 10th floor. This is a locked floor:
Use the phone by the door to call Vasilis at the last four digits of (212-99)8 3359
The number is posted at the door.
The recitations will be team taught by Gkatzelis and Siegel
Midterm: Tuesday, March 8 at 2:00.
This course covers the design and analysis of
combinatorial algorithms. The curriculum is concept-based and emphasizes the
art of problem-solving. The course features
weekly exercises designed to strengthen conceptual understanding and problem
solving skills. Students are presumed to have adequate programming skills and
to have a solid understanding of basic data structures and their implementation
in the programming languages of their choice. Although some mathematical
sophistication would be helpful for this course, the necessary mathematics is
contained within the curriculum.
Because of the emphasis on problem solving, students are
expected to attend the Tuesday recitation sessions, where students will
practice applying sophisticated concepts to solve challenging exercises.
Algorithmic Design Paradigms
The Greedy Method
Sorting- and Selection-based processing
Algorithm Redesign and Adaptation
The Analysis of Algorithmic Performance
The Recursion Tree Solution Method
Managing Data for Efficient Processing
Lists, Stacks, Queues, Priority Queues, Trees and
Tarjan's Categorization of Data
Search Trees and their Enhancement
Sorting, Selection, and Hashing
Selected Representative Algorithms/problems
Biconnected Components and Strong Components
Representative styles of Dynamic Programming and their applications
Standard Sorting and Selection Algorithms
Selected topics in Hashing
Minimum Spanning Trees
Shortest Path Problems
Inside Guide to Algorithms: their application, adaptation, design and analysis,
by A.R. Siegel and R.J.
Cole, which is available at the Unique Copy Center, 252 Greene St. (between Waverley and 8th Street).
There will be approximately 11 written homework assignments
that have, on average, about 12 exercises each. Perhaps one-third
to one-half of these problems will be extremely challenging. That is,
the necessary concepts will have already been taught, but a good deal
of thought will be needed to figure out how to apply these techniques
to solve the more challenging exercises.
- Students are not required to solve even half of the more difficult
but they are expected to write down what ideas/methods they used, and where
their solution method broke down.
- Students are also expected to compare their own answers with the
solution handouts to see what concepts and techniques were overlooked.
Because more than a third
of the course is embedded in the exercises, students are expected to study the
answers as a vehicle for mastering the material.
- Homework will receive two grades: overall performance, and quality of
effort. Incorrect and even fragmentary incorrect answers can receive full
credit for the QoE grade, which will have a grading weight that is much larger
than the correctness grade for each assignment.
Course Grading Policy
20% Midterm Exam
5% Overall homework performance grade
20% Overall QoE homework grade
47% Final Exam Date and time TBD
8% Classroom participation