Lecture I | Tutorial I | Tutorial II | Tutorial III | Lab session | |
---|---|---|---|---|---|
Time | T2-4, 9:30 am - 12:15 pm | W6, 1:30 pm - 2:15 pm | W7, 2:30pm - 3:15 pm | H6, 1:30pm - 2:15 pm | Mon to Thu, 5:30 pm - 7:30 pm |
Venue | LSB LT1 | BMS LT | BMS LT | LSB C1 | SHB924 |
The Golden Rule of CSCI2100B: No member of the CSCI2100B community shall take unfair advantage of any other member of the CSCI2100B community.
The concept of abstract data types and the advantages of data abstraction are introduced. Various commonly used abstract data types including vector, list, stack, queue, tree, and set and their implementations using different data structures (array, pointer based structures, linked list, 2-3 tree, B-tree, etc.) will be discussed. Sample applications such as searching, sorting, etc. will also be used to illustrate the use of data abstraction in computer programming. Analysis of the performance of searching and sorting algorithms. Application of data structure principles.
本科介紹抽象數據類型之概念及數據抽象化的優點。並討論多種常用的抽象數據類型,包括向量、表格、堆棧、隊列、樹形;集(合)和利用不同的數據結構(例如:陣列、指示字為基的結構、連接表、2-3樹形、B樹形等)作出的實踐。更以實例(例如:檢索、排序等)來說明數據抽象化在計算機程序設計上的應用。並討論檢索與排序算法及數據結構之應用。
Lecturer | Tutor | Tutor | Tutor | Tutor | |
---|---|---|---|---|---|
Name | Irwin King | Yuanming Yu | Hongyi Zhang | Shenglin Zhao | Fei Chen |
king AT cse.cuhk.edu.hk | ymyu AT cse.cuhk.edu.hk | hyzhang AT cse.cuhk.edu.hk | slzhao AT cse.cuhk.edu.hk | fchen AT cse.cuhk.edu.hk | |
Office | SHB 908 | SHB 805 | SHB 1024 | SHB 1024 | SHB 913 |
Telephone | 3943 8398 | NA | 5984 1406 (inquiry for homework) | 5983 2723 (inquiry for lab session) | NA |
Office Hour(s) | * M8, Monday 3:30 to 4:30 * T8, Tuesday 3:30 to 4:30 * By appointment | NA | * H7, Thursday 14:30 to 15:30 | * H8, Thursday 15:30 to 16:30 | NA |
Note: This class will be taught in English. Homework assignments and examinations will be conducted in English.
The pdf files are created in Acrobat XI. Please obtain the correct version of the Acrobat Reader from Adobe.
Week | Date | Topics | Tutorials | Homework & Events | Resources |
---|---|---|---|---|---|
1 | 3/9 | Introduction Introduction.pdf | No Tutorials | TBA | TBA |
2 | 10/9 | Algorithm Analysis Analysis.pdf | Introduction on C | TBA | TBA |
3 | 17/9 | 1.Recurrence Relations 2. List, Stacks, and Queues Recurrence.pdf LSQ.pdf | Online Judge System | * HW #1 (Version 1.16) * Written Assignment (Due on or before 5:00 pm, Friday, Sep 27, 2013) * 1.1 (6), (8), (12) and (13); 1.2 (3); 1.3 (1) and (5); 1.4 (5) and (6); 1.6 (1), (3), and (5); 1.8 (3); 1.9 (2) and (4) * Programming Assignment (From 12:00 am, Monday, Sep 23, 2013 to 11:59 pm, Sunday, Sep 29, 2013) * 1.17 (Problem 1) and 1.20 (Problem 2) | TBA |
4 | 24/9 | Tree Data Structures and Algorithms Tree.pdf | I/O Issues in C | TBA | TBA |
5 | 1/10 | Public Holiday | List, Stacks, and Queues in C | TBA | TBA |
6 | 8/10 | Tree Data Structures and Algorithms | Trees in C | TBA | TBA |
7 | 15/10 | Hash Functions Hash.pdf | Hash in C | *HW #2 (Version 1.17) * Written Assignment (Due on or before 5:00 pm, Monday, Oct 28, 2013) * 3.2 (2); 3.3 (2); 3.5; 3.9 (please zoom in); 3.10; 3.11; 3.12 (2); 3.18; 4.1 (1) and (2); 4.4; 4.15; 5.1; 5.2 * Programming Assignment (From 12:00 am, Monday, Oct 21, 2013 to 11:59 pm, Sunday, Oct 27, 2013) * 2.17 (Problem 1), 3.35 (Problem 2), and 4.17 (Problem 3) | TBA |
8 | 22/10 | 1. Heaps 2. Sorting Algorithms Heaps.pdf Sort.pdf | Heaps in C | Solutions for HW#1 | TBA |
9 | 29/10 | Sorting Algorithms | HW #2 Solution | Solutions for HW#2 (Written part) | Programming Midterm Paper 12-13 Term 2 |
10 | 5/11 | Midterm Written Exam Midterm Programming Exam | PC2 Tutorial for Midterm | Solution for HW#2 (Programming part) | TBA |
11 | 12/11 | Sorting Algorithms | Written Midterm Solution | TBA | TBA |
12 | 19/11 | Graph Data Structures and Algorithms Graphs.pdf | Quicksort and Mergesort in C | * HW #3 (Version 1.18) * Written Assignment (Due on or before 5:00 pm, Thursday, Nov 28, 2013) * 6.2 (3); 6.3; 6.4; 6.6 (2); 6.7; 6.9 (name two stable ones and two unstable ones); 7.1; 7.3 (1); 7.4; 7.5 (1); * Programming Assignment (From 12:00 am, Wednesday, Nov 20, 2013 to 11:59 pm, Tuesday, Nov 26, 2013) * 6.10 (Problem 1) | TBA |
13 | 26/11 | 1. Graph Data Structures and Algorithms 2. Course Summary Final.pdf | Graph Revisited | Solutions for HW#3 (Written part) | TBA |
Tutorial Page
Manual Page
Time | Venue | Notes | |
---|---|---|---|
Midterm Examination Written | 9:30 am - 11:30 am, Nov 5, 2013 | LSB LT1 | The scope is all materials up to heaps (including heaps). You can bring one cheat sheet (A4, both sides) of notes. Calculator is not required. |
Midterm Examination Programming | 6:00 pm - 9:30 pm, Nov 8, 2013 | SHB 924 | The scope is all materials up to heaps (including heaps). You can bring print outs of previous programming homework assignments. |
Final Examination | 3:30 pm - 5:30 pm, Dec 9, 2013 | Multi-purpose Hall, Pommerenke Student Centre | The final examination covers all materials presented in the class, but emphasizes more on the materials after the midterm. You can bring one cheat sheet (A4, both sides) of notes. Calculator is not allowed. |
Final Examination (Written) | Midterm Examination (Written Part) | Midterm Examination (Programming Part) | Assignments |
---|---|---|---|
50% | 10% | 20% | 20% |
Note: One must solve at least one problem in the programming examination to pass the examination.
failed to fetch data: Could not connect to ecs.amazonaws.com:80
Connection timed out (110)
failed to fetch data: Could not connect to ecs.amazonaws.com:80
Connection timed out (110)
failed to fetch data: Could not connect to ecs.amazonaws.com:80
Connection timed out (110)
This site is the creator of Matlab. You will be able to obtain much Matlab-related information.