CSCI2100B Data Structures | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Offered by Yufei Tao, Spring 2025. Tutors: Hao Chen (hchen22@link.cuhk.edu.hk), Xingyu Cui (xycui24@cse), and Zeju Li (lizeju@link.cuhk.edu.hk). Offices and Consultation Hours:
[Lecture Notes][Tutorials][Regular Exercises][Special Exercises][Quizzes and Exams][Project] |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Brief Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In this course, we will study fundamental data structures and algorithms. Such knowledge is at the core of computer science and allows us to write faster programs, especially programs whose running time has attractive worst-case bounds. Techniques for analyzing the performance of algorithms will also be discussed in detail. Tentative topics to be covered include searching in ordered lists, hashing, sorting, priority queues, binary search trees, fundamental graph algorithms, and so on. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Announcements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News 21 (7 May): The final exam scores have been released on Blackboard. The solutions and statistics can be found in the "Quizzes and Exams" section of this page. You may come to check your papers on 9 May from 2:30pm to 6:30pm. The venue is Room 1011, Ho Sin-Hang Engineering Building. Please obey the following rules:
News 20 (5 May): Your project scores have been released on Blackboard. News 19 (16 Apr): Quiz 3 scores have been posted on Blackboard. The solutions and statistics can be found at the bottom of the page. You may now collect your Quiz 3 papers following the rules described in News 11. News 18 (7 Apr): Quiz 3 will take place in the lecture of next Mon (14 Apr). The scope covers everything in Lectures 17-20. The quiz will be open book. News 17 (6 Apr): The midterm scores have been released on Blackboard. The solutions and statistics can be found in the "Quizzes and Exams" section of this page. You may now collect your exam papers from the TAs assigned to your IDs (see News 11). To do so, visit their offices during the designated consultation periods. News 17 (18 Mar): The lecture of 25 Mar is canceled because the instructor will be on conference leave on that day. News 16 (13 Mar): The scope of the midterm covers Lectures 1-16. Please read about the exam style in the "Grading Scheme" section. News 15 (10 Mar): New Video Release Policy: The instructor has noticed a growing trend among students who prefer watching lecture videos instead of attending the lectures in person. This undermines the purpose of releasing videos and significantly impacts the classroom teaching atmosphere. Therefore, from now on, lecture videos will be released based on two conditions: (i) successful capture of the video via Zoom, and (ii) attendance of at least 30 students (i.e., 1/3 of the class) during the lecture. The new policy will be enforced starting from 11 Mar. News 14 (1 Mar): The project has been released. The deadline is 27 Apr 2025. Please submit your work in Blackboard. News 13 (27 Feb): Quiz 2 scores have been posted on Blackboard. The solutions and statistics can be found at the bottom of the page. You may now collect your Quiz 2 papers following the rules described in News 11. News 12 (18 Feb): Quiz 2 will take place in the lecture of next Mon (Feb 24). The scope covers everything in Lectures 7-12. The quiz will be open book. News 11 (14 Feb): Quiz 1 scores have been posted on Blackboard. The solutions and statistics can be found at the bottom of the page. You may now collect your Quiz 1 papers. To do so, please locate the TA assigned to your ID from the list below. Then, visit their offices during the designated consultation periods. If needed, you may also consider reaching out to the TA via email to request a special appointment. Please note that it is at the TA's discretion to decide whether to grant your request.
The lecture on Mar 25, however, will be canceled. News 9 (21 Jan): The scope of Quiz 1 covers everything in Lectures 1-6. News 8 (9 Jan): Given that 27 Jan is very close to the Lunar New Year, Quiz 1 will be rescheduled to the lecture on 4 Feb (Tue, Week 4). News 7 (7 Jan): Regular exercise 1 and Special exercise 1 have been released. Please find them at the bottom of the page. There will be no more reminders for exercise releases. Please check this page periodically. News 6 (7 Jan): Tutorials will start from Week 2 (no tutorials on Jan 8 and 9). News 5 (7 Jan): The video for Tue's lecture is now available. In general, lecture videos will be released as long as they are captured successfully. Remember: videos are supplemental and cannot be guaranteed. There will be no more announcements regarding video releases. Please check this page periodically. News 4 (5 Jan): Sick Leave Policy for Tests In the unfortunate event that you are seriously ill on the day of a quiz or an exam, you can be absent from the test provided that the following conditions are satisfied.
News 3 (5 Jan): Please note the test schedule for this course: Quiz 1 (20 minutes) is to be held in the lecture of Quiz 3 (20 minutes) in the lecture of 14 Apr (Mon, Wed 13). News 2 (5 Jan): Tutorial Session T03 has been merged into T01. Previously, T03 was scheduled to take place in Y.C. Liang Hall 103 every Wed from 5:30pm to 6:15pm. The new location will be Science Centre LG23, and the time remains unchanged. News 1 (5 Jan): Hello, all. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Time, Venues, and Zoom Links | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lectures
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Grading Scheme | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-Class Quiz 1: 5% In-Class Quiz 2: 5% In-Class Quiz 3: 5% Midterm Exam: 20% Coding Project: 15% Final Exam: 50% Exam Style: During this course, the instructor will gradually generate a list of special exercises with no solutions given. In the midterm and final exams, 35% of the marks will come from problems taken directly from that list. The rest 65%, however, will be from new problems. In the midterm and the final exams, you will be allowed to bring in a single-sided, A4-sized, note sheet on which you can print/write anything you deem useful. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture Notes and Textbook | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The instructor recommends the following textbook: Introduction to Algorithms, 3rd Edition. By Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Ownership of the book is not compulsory. The instructor will make lecture notes available before each lecture. His notes will be self-contained, namely, containing all the details required in this course. Lecture attendance is vital to grasp the material taught.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Tutorial Material | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Regular Exercises | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The instructor has prepared the following exercises which he believes are useful for students to consolidate their understanding of the course material. Unlike the "special" exercises (see the next section), solutions to these "regular" exercises are provided in full. Exercises carrying one or more stars ("*") may be difficult. The more stars, the more difficult. List 1 (Solutions). List 2 (Solutions). List 3 (Solutions). List 4 (Solutions). List 5 (Solutions). List 6 (Solutions). List 7 (Solutions). List 8 (Solutions). List 9 (Solutions). List 10 (Solutions). List 11 (Solutions). List 12 (Solutions). List 13 (Solutions). There will be no more regular exercises. Additional exercises in the textbook [Growth of Functions] Exercises 2.2-1, 3.1-2, 3.1-3, 3.1-4, 3.2-4, 3.2-8. [Sorting] Exercises 8.1-3*, 8.1-4*, 8.2-4, 8-5*. [k-Selection] Exercises 9.3-6, 9.3-9, Problem 9-2. [Linked List] Exercises 10.2-6. [Hashing] Exercises 11.2-5, 11.3-5*, Problem 11-2. [Priority Queue] Exercises 6.1-4, 6.5-9, Problem 6-3. [AVL-Tree] Exercises 12.1-3, 12.1-5, 12.2-5, 12.2-6, Problems 12-2, 13-1. [Graph Basics] Exercises 22.1-5, 22.1-6*. [DFS] Exercises 22.3-4, 22.3-7, 22.3-8, 22.3-10. [Topological Sort] Exercises 22.4-2, 22.4-3, 22.4-5. [BFS] Exercises 22.2-5, 22.2-7, 22.2-8. [Fundamental Graph Challenges] Problems 22-2(e-h), 22-3, 22-4. [SSSP] Exercises 24.3-6*, 24.3-7. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Special Exercises | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
As mentioned earlier, some problems in the final exam of CSCI2100 will be taken directly from the special exercise lists below. No solutions to these exercises will be given. You are free to look for the solutions in any way. List 1. List 2. List 3. List 4. List 5. List 6. List 7. List 8. List 9. List 10. List 11. List 12. List 13. There will be no more special exercises. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Quizzes and Exams | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Quiz 1: Solutions Average = 63.8, standard deviation = 21.3. Quiz 2: Solutions Average = 74.6, standard deviation = 23.9. Midterm: Solutions Average = 59.1, standard deviation = 22.8. Top 25 scores. Quiz 3: Solutions Average = 75.2, standard deviation = 28.2. Final: Solutions Average = 55.3, standard deviation = 12.9. Top 25 scores. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Project | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description (updated on 26 Mar). Deadline: 11:59pm, 27 APR 2025. A link has been created in Blackboard to collect your submissions. Please submit a single Zip file containing all the deliverables required. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|