Textbook Data Structures and Algorithm Analysis in C++, Mark Allen Weiss - New version - Source code available online - Available at library for 24-hour loan
Grading Policy Two Written Assignments 8% (4% each) Three Lab Assignments 27% (9% each) Midterm Exam 25% Final Exam 40%
Plagiarism Policy 1 st Time: both get 0 2 nd Time: one full grade lower 3 rd Time: F Midterm or Final: F You are encouraged to collaborate in study groups. But you cannot directly copy or slightly change other students’ solutions or code We use a computer program to automatically check if two assignments are similar (even if you make the variable names different, it can detect similar solutions). If so, you will be interviewed for possible violation.
Course Overview A fundamental computer science course - Essential for programming - Essential for advanced courses like 271 A challenging course - Intensive programming - Intensive (mathematical and logic) thinking A fun course Lots of thinking and clever solutions
Course Prerequisite COMP103 or COMP104 Need to know C and C++ Visual Studio or other PC programming environment Good programming skills Translate pseudo-codes into codes Speedy review in the 1 st week COMP151 Not essential Highly recommended to be taken concurrently Basic mathematical skills Solving recursive equations, manipulation of symbols, etc. Computer architecture Pointers, storage, memory access, etc.
Course Outline C++ Review Algorithms and Analysis List, Stack, Queues Trees Hashing Sorting Graph
Overall Goal of the Course From programmer to architect Learn to solve problems Algorithms and Programming go hand in hand Learn to analyze your solutions
Lecture Format Feel free to interrupt to ask questions Lectures: Slides are available one day before the lecture It is important to attend the lectures (Not all materials are covered in slides) Tutorials Supplement the lectures Some important exercises Welcome to attend other labs if you miss the your assigned session Programming and homework assignments More rigorous problems to consolidate your knowledge
Assignments Written Assignments (WA) Due by time specified Contact TAs directly for re-grades Re-grade requests will only be entertained within 1 week after the homework are handed back Programming Assignments (PA) Submit it yourself through the assignment program Run on PCs We will not handle porting problems
Late Policy For written assignments, 20% will be deducted for one day late submissions. Assignments later than 1 day will not be accepted. Programming assignment late policy: to be announced
Midterm and Final Midterm: Nov 6, 6-9 pm LTA Final: TBA Exams: Closed-book, closed-notes No make-ups will be given Unless under very unusual circumstances, with letters of proof Instructor informed beforehand