This course covers efficient algorithms that solve a variety of computational problems, such as searching, selection, and problems in graph theory and computational geometry. More importantly, we will learn the general techniques for the design and analysis of algorithms. Topics include asymptotic analysis, reducing to known problems, recursion, divide-and-conquer, greedy algorithms, dynamic programming, randomized algorithms, graph algorithms, and NP-completeness and its implications.
More details of the goals and topics of this course can be found in the Faculty of Computer Science Curriculum.
CSCI 2110 and 2112.
Required textbook: [CLRS] Introduction to Algorithms, 3rd edition, Cormen, Leiserson, Rivest and Stein, MIT Press, 2009.
I will call this book [CLRS] in class. This book is available in our bookstore. The library currently has two electronic copies; to access them, search for the book by title at the library's website. Note that each of these two copies of this e-book is a "limited use title", which means only one person can read it online at a time. If you try to access it when another user is reading it, you will be notified that the book is in use. When the book becomes available, there will be a pop up window informing you that it is available now.
Final Grade = A * 40% + max(M*20%+F*40%, F*60%)
In other words, the best 7 out of 8 assignments are counted as 40% of your final grade, and if your final exam score is higher than the midterm exam score, your final exam score will be used in place of the midterm exam score in the calculation.
If you are unable to write one or more assignments for valid, well-documented reasons such as serious sickness, your final exam score can be used to cover the marks for your missing course work. Please contact the instructor if this applies to you.
If you miss the final exam due to a valid reason, an oral final exam will be scheduled, during which you will be asked to use a whiteboard to show your solutions. A teaching assistant will also be present during the oral exam.
At Dalhousie University, we respect the values of academic integrity: honesty, trust, fairness, responsibility and respect. As a student, adherence to the values of academic integrity and related policies is a requirement of being part of the academic community at Dalhousie University. You can find more details on Dalhousie University's Academic Integrity web site.
A Concise Two-Page Course Information Sheet (handed out in the first lecture)
Back to the course main page