Data Structures and Algorithms II
This module is the third part of a three-part series on introductory programming and problem solving by computing. It continues the introduction in CS1010 and CS1020, and emphasizes object-oriented programming with application to complex data structures. Topics covered include trees, binary search trees, order property, prefix/infix/postfix expressions, heaps, priority queues, graphs and their algorithmic design, recursive algorithms, problem formulation and problem solving with applications of complex data structures, data structure design principles and implementation strategies, and algorithm analysis. Advanced data structures such as B-trees and AVL trees are also covered.
Lecture is held in ICube (I3) Building - Auditorium, [map] , 12-2pm (Tuesday)
Tutorials 1, 2, 3, 4, 5, 6 – COM1-0201 - 9-10am, 10-11am, 11-12pm, 12-1pm, 1-2pm, 2-3pm (Wednesday)
Labs 1, 2, 3, 4, 5, 6 – COM1-0120 - 10-11am, 11-12pm, 12-1pm, 1-2pm, 2-3pm, 3-4pm (Monday)
Abdel [abdoukamel (at) gmail.com] - Lab 3, 4, 5, & 6, Tutorial 4, 5, 6
Boxin [a0107354 (at) u.nus.edu] – Lab 1 & 2
Yui Wei [yuiwei (at) u.nus.edu] – Tutorial 2, 3
Hakki [karaimer (at) u.nus.edu] – Labs/Assignments
Sixing [hu.sixing (at) u.nus.edu] – Labs/Assignments
Mahsa [a0117965 (at) nus.edu.sg] – Tutorial Questions/Answers
Assoc Prof. Michael S. Brown (link)
Office hours: please arrange appointment via email. Use my brown “at” comp email.
Schedule and Notes (link)
This module will consist of both assignments (50%) and exams (50%).
Text (recommended, not required – a copy is available at the Central Library)
4th Edition by Robert Sedgewick and Kevin Wayne (link)