Computer Science 126
General Computer Science
Spring 2014


Course Information | People | Assignments | Lectures | Precepts | Exams | Booksite

LECTURES

Here is the tentative schedule of lectures. (Lectures in the future are subject to change, and data will be updated throughout the term.) All sections refer to Introduction to Computer Science by R. Sedgewick and K. Wayne. The textbook Introduction to Programming in Java: An Interdisciplinary Approach contains Chapters 1–4. The remaining chapters are unpublished.

Advice. The slides are intended for the lecture presentations; for reference, read the indicated sections from Introduction to Programming in Java: An Interdisciplinary Approach. An effective strategy is to skim the textbook before the lecture, then read it thoroughly soon afterwards. We recommend printing the slides before lecture and annotating them during lecture.

Online viewing and printing. These lecture slides are suitable for online viewing (one per page) or printing (four per page).

Errata.   Here is a list of known errors in the lecture notes and other course materials.

# DATE TOPIC SLIDES READINGS DEMOS
1 2/4 Prologue 1up · 4up 1 LFSR
2 2/6 Introduction to Java 1up · 4up 1.1–1.2 Exchange IntOps LeapYear
3 2/11 Conditionals and Loops 1up · 4up 1.3 ForLoop TwoSort AbsValue Sqrt
Ruler TwoPower TEQif Gambler
4 2/13 Arrays 1up · 4up 1.4 shuffling ArrayCopy DigitCounts
CouponCollector DealCards
5 2/18 Input and Output 1up · 4up 1.5 Average StdInDemo
6 2/20 Functions and Libraries 1up · 4up 2.1–2.2 Newton Cube Gaussian Perimeter
7 2/25 Recursion 1up · 4up 2.3 gcd Binary Ruler Recursive Fibonacci
Memoized Fib. DP Fib. Change
8 2/27 Performance, with Sorting 1up · 4up 4.1–4.2 (book), 9.6(booksite) insertion sort
merge sort
binary search
9 3/4 Von Neumann Machine I 1up · 4up 5.1–5.3 (booksite) X-TOY
10 3/6 Von Neumann Machine II 1up · 4up 5.4–5.5 (booksite) X-TOY
11 3/11 Written Exam 1 - -
12 3/13 Scientific Computing 1up · 4up 9.1, 9.4, 9.5 (booksite)
— SPRING BREAK —
13 3/25 Using Data Types 1up · 4up 3.1 PlayTime
14 3/27 Creating Data Types 1up · 4up 3.2–3.3 Person Watch (with internal calls) Complex
15 4/1 Stacks and Queues 1up · 4up 4.3 linked-list iteration
StackQueue MonkeyChain
16 4/3 Symbol Tables 1up · 4up 4.4 inorder traversal
ST
17 4/8 Case Study: Small World 1up · 4up 4.5 Breadth-First Search
18 4/10 Theory of Computation 1up · 4up 7.1–7.3 (booksite and online chapter**) DFA
19 4/15 Universality and Computability 1up · 4up 7.4–7.6 (booksite), Harel 1–2 (optional) Turing machine: java webstart or
jar (run java -jar turing.jar
20 4/17 Intractability 1up · 4up 7.7 (booksite), Harel 3–5 (optional)
21 4/22 Combinational Circuits 1up · 4up Circuits reading (thru p. 21)
22 4/24 Designing a CPU 1up · 4up
23 4/29 Written Exam 2 - -
24 5/1 Fun, demos, AI 1up · 4up practice Minesweeper -
** links are only accessible from on-campus IP addresses.


Copyright Robert Sedgewick and Kevin Wayne.