CS1003/1004: Schedule & Homeworks
[ Announcements | Course Info | Schedule & Homeworks | Resources | Webboard | Grades ]

The following schedule is tentative and is subject to change as the semester proceeds. After each class and lab, slides will be linked-to in PDF format. Readings (listed below each topic) are from Brookshear (theory), Practical C (C lab), Java Gently (Java lab).

For homeworks, check out the submission instructions.

Week of: Theory (Tuesday)
(All slides in outline form)
C
(All slides in outline form)
Java
(All slides in outline form)
Homework
Jan 20 Introduction
(no required reading)
Intro to UNIX (Note: only one session, held in 207 Math, Thurs 11am-12:15pm)
(no required reading)
HW#0 out
Jan 27 Language basics
Ch. 0, 5.1-5.3
Starting C
Ch. 1-4
Starting Java
Ch. 1, 2
HW#1 out
Feb 3 Data representation and manipulation
Ch. 1.1-1.6
Data types, manipulation, basic I/O
Ch. 5
Data types, manipulation
[ Maryam | William ]
Ch. 3.1
 
Feb 10 Abstraction, algorithms I (concepts, design, iteration)
Ch. 4.1-4.4 (sample code)
Decision and control statements
Ch. 6
Basic loops, methods/abstraction
Ch. 3.2-3.7
HW#1 due; HW#2 out
Feb 17 Algorithms II (examples)
Ch. 4.5-4.6 (sample code)
Decision/control II
Ch. 8
Basic I/O, decision & control statements
Ch. 4
 
Feb 24 Algorithms III (recursion, running time)
(no required reading)
Functions/abstraction
Ch. 9
Flow control, arrays
Ch. 5, 6.1
HW#3 out
Mar 2 Algorithms IV (running time, sorting)
(no required reading)
Coding practices, debugging
Ch. 7
Coding practices, debugging HW#2 due
Mar 9 Midterm C preprocessor, bit operations
Ch. 10, 11
Formatting, advanced I/O
Ch. 7
 
Mar 16 Vacation - No classes or labs
Mar 23 Data structures (concepts, design, pointers)
Ch. 7.1-7.3, 7.7-7.8
enums, structs, typedef
Ch. 12
OO I (Design, properties, references)
Ch. 8 (sample code)
HW#3 due; HW#4 out
Mar 30 Data structures II
Ch. 7.4-7.6
Pointers I (call-by-reference)
Ch. 13 (sample code)
OO II
(sample code)
 
Apr 6 Computer architecture
Ch. 2
Pointers II (assignment, arithmetic)
(sample code)
OO III (abstraction, inheritance)
Ch. 9
HW#4 due; HW#5 out
(C | Java)
Apr 13 Operating systems & networks
Ch. 3
Pointers III (malloc), basic data structures
Ch. 17 (pp. 279-288)
Basic AWT/Swing
Ch. 10 (sample code)
 
Apr 20 Networks, Artificial Intelligence
Ch. 10
File I/O
Ch. 14
Event-based programming
Ch. 11 (sample code)
HW#5 due; HW#6 out
(C | Java)
Apr 27 Computation theory
Ch. 11.1-11.5
Modularity (header files, Makefile)
(sample code)
Ch. 18
Review, Miscellany  
May 4 Reading week (review session schedule) HW#6 due
May 11 Final exam (5/11, 9am-noon, 207 Math)