**Here** is the link to our discussion forum.
Congratulations again to these students who did an incredibly excellent job on this year's programming midterm!
From left to right: YIU Man Chi (2nd Runner-up), HO Kwun Ting (Most Precise Coder), LI Danli (Excellent Female Coder), CHEN Yu Zhen (Best Female Coder), WONG Ka Wing (3rd Runner-up), Prof. King, SU Jinhai (1st Runner-up), LAU Chi Yung (Champion).
We apologize that this question is not clearly written, even one of our TAs, Ken, got confused. This question actually intends to ask students to give the final value of x.
Lecture I | Lecture II | Tutorial I | Tutorial II | |
---|---|---|---|---|
Time | M5, 12:30 pm - 1:15 pm | T5-6, 12:30 pm - 2:15 pm | M7 2:30 pm - 3:15pm | W10 5:30 pm - 6:15 pm |
Venue | LSK LT3 | LSK LT3 | LSK LT3 | ERB 407 |
The Golden Rule of CSCI2100: No member of the CSCI2100 community shall take unfair advantage of any other member of the CSCI2100 community.
The Student/Faculty Expectations on Teaching and Learning document is available [here].
Pre-requisite: CSCI1110 or 1120 or 1130 or 1510 or 1520 or 1530 or 1540 or ENGG1110 or ESTR1100 or ESTR1102 or ESTR1002 or its equivalent. For senior-year entrants, the prerequisite will be waived. Students are also expected to have basic knowledge in Linux command line.
If you have not used Linux command line interface before, you can consider the following online course from Udacity.
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 1 | Tutor 2 | Tutor 3 | Tutor 4 | |
---|---|---|---|---|---|
Name | Irwin King | Jiani Zhang | Ken Chan | Tong Zhao | Hongyi Zhang |
king AT cse.cuhk.edu.hk | jnzhang AT cse.cuhk.edu.hk | hpchan AT cse.cuhk.edu.hk | tzhao AT cse.cuhk.edu.hk | hyzhang AT cse.cuhk.edu.hk | |
Office | SHB 908 | SHB 1024 | SHB 1024 | SHB1024 | SHB 1024 |
Telephone | 3943 8398 | ||||
Office Hour(s) | * By appointment | Friday 1:00 pm - 2:00 pm | Tuesday 11:00 am - 12:00 pm | Thursday 3:00 pm - 4:00 pm | Thursday 3:00 pm - 4:00 pm |
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 | Lecture Topics and Notes | Tutorial Topics | Homework Assignments and Events | Resources |
---|---|---|---|---|---|
1 | 11/1 | Introduction Introduction KEEPAttendance | Introduction of C | * WA #1 hw_1.19.pdf Due on or before 5:00 pm, Mon, Feb 1, 2016 * 1.1 (4), (6), and (12); 1.3 (3) and (9); 1.4 (1), (3) and (5) | * Chapter 1 of Weiss'97 * Chapter 1 of Cormen et al.'90 |
2 | 18/1 | Algorithm Analysis Analysis (updated) | Online Judge System | * PA #1 hw_1.21.pdf From 6:00 pm, Friday, Jan 29, 2016 to 6:00 pm, Friday, Feb 5, 2016 * 1.21(Problem 1);1.22(Problem 2) | * Chapter 2 of Weiss'97 |
3 | 25/1 | 1. Algorithm Analysis 2. Lists, Stacks and Queues LSQ | I\O issues | * WA #2 hw_1.21.pdf Due on or before 5:00 pm, Fri, Feb 19, 2016 * 1.6 (1), (3), and (5); 1.8 (3); 1.9 (2) and (4) | * Chapter 2 of Weiss'97 * Chapter 3 of Weiss'97 |
4 | 1/2 | 1. Lists, Stacks and Queues 2. Tree Data Structures and Algorithms Trees | Lists, Stacks and Queues in C | * PA #2 hw_1.22.pdf From 12:00 am, Friday, Feb 19, 2016 to 23:59 pm, Thursday, Feb 25, 2016 * 2.3(Problem 1);2.16(Problem 2);2.19(Problem 3 Bonus) | * Chapter 3 of Weiss'97 |
5 | 8/2 | Lunar New Year Break | |||
6 | 15/2 | Tree Data Structures and Algorithms The lecture video playlist is available here. | Linux commands and vim | * WA #3 hw_1.22.pdf Due on or before 5:00 pm, Fri, March 04, 2016 * 3.3 (2) (3); 3.10; 3.11; 3.18; 5.1; 5.2; 5.4 | * Chapter 4 of Weiss'97 |
7 | 22/2 | 1. Tree Data Structures and Algorithms 2. Heaps Heaps | Binary and AVL Trees in C | * PA #3 hw_1.23.pdf From 12:00 am, Friday, March 4, 2016 to 23:59 pm, Thursday, March 10, 2016 * 3.24(Problem 1) ;3.32(Problem 2);3.36(Problem 3 Bonus) | * Chapter 4 of Weiss'97 |
8 | 29/2 | 1. Heaps 2. Hash Functions Hashing | Heap in C | * WA #4 hw_1.23.pdf Due on or before 5:00 pm, Fri, April 1, 2016 * 4.1; 4.14; 6.1; 6.2; 6.6(2) | * Chapter 6 of Weiss'97 * Chapter 5 of Weiss'97 |
9 | 7/3 | 1. Hash Functions 2. Sorting Algorithm Sorting | Hashing in C | * PA #4 hw_1.24.pdf From 12:00 am, Friday, Mar 18, 2016 to 23:59 pm, Thursday, Mar 24, 2016 * 4.17(Problem 1 easy testcases);4.17(Problem 2 tough testcases);5.10(Problem 3 easy testcases);5.10(Problem 4 tough testcases) | * Chapter 5 of Weiss'97 |
10 | 14/3 | Sorting Algorithms Announcements Quicksort Demo | Pointers in C | No assignment | * Chapter 7 of Weiss'97 |
11 | 21/3 | Open Forum Written Midterm Exam | No Tutorials | No assignment | * Chapter 7 of Weiss'97 |
12 | 28/3 | 1. Easter Break 2. Sorting Algorithms 3. Graph Data Structures and Algorithms Graphs Announcements | Programming Exam Preview | * PA #5 hw_1.24.pdf From 12:00 am, Monday, Apr 11, 2016 to 23:59 pm, Sunday, Apr 17, 2016 * 1.19(Problem 1 easy testcases);1.19(Problem 2 tough testcases);6.11(Problem 3 easy testcases);6.11(Problem 4 tough testcases) | |
13 | 4/4 | 1. Ching Ming Festival 2. Graph Data Structures and Algorithms 3. Programming Midterm Exam | Programming Exam Preview | * WA #5 hw_1.24.pdf Due on or before 5:00 pm, Fri, April 22, 2016 * 7.1; 7.3; 7.4; 7.5 (1) | |
14 | 11/4 | Discussions on Programming Midterm | No Tutorial | Midterm Summary | * Chapter 9 of Weiss'97 |
15 | 18/4 | 1. Graph Data Structures and Algorithms 2. Course Summary Final | Mergesort and Quicksort in C | * Chapter 9 of Weiss'97 |
Tutorial Page
Manual Page
Time | Venue | Notes | |
---|---|---|---|
Midterm Examination Written | March 22, 12:30 pm - 2:15 pm | LSK LT5 | One cheat sheet (A4, both sides) of notes. No calculator. |
Midterm Examination Programming | April 8, 6:00 pm - 9:00 pm | SHB924 | Printed out materials only. |
Final Examination | April 28, 9:30 am - 11:30 an | Multi-purpose Hall, Pommerenke Stud Ctr | One cheat sheet (A4, both sides) of notes. No calculator. |
Final Examination (Written) | Midterm Examination (Written Part) | Midterm Examination (Programming Part) | Assignments & Quizzes |
---|---|---|---|
50% | 10% | 20% | 20% |
Note: One must solve at least one problem in the programming examination to pass the course.
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)