Introduction
This course is an introduction to computer science, with particular emphasis on software and on machines from a programmer’s point of view. In this course we covered high-level approaches to problem-solving, providing you with a variety of ways to organize solutions to programming problems: as compositions of functions, collections of objects, or sets of rules. In this course we move to a somewhat more detailed (and to some extent, more basic) level of programming. In this course we’re concerned also with engineering. An engineer, it is said, is someone who can do for a dime what any fool can do for a dollar. Much of this course will be concerned with the tradeoffs in time and memory for a variety of methods for structuring data.
Lecture | PDF Slides | Subject |
1 | Course Introduction | |
2 | Developing a Simple Program | |
3 | Mechanics of Objects | |
4 | Pointer Manipulation | |
5 | Arrays and Objects | |
6 | Arrays and Objects, cont. | |
7 | Java Library List Classes | |
8 | Object-Oriented Mechanisms | |
9 | Abstract Methods and Classes | |
10 | Abstract Methods and Classes (contd.) | |
11 | Examples of Interfaces | |
12 | More on constructors, Exceptions | |
13 | Loose ends: Packages, imports, access control, nested classes, super, instanceof | |
14 | Continuation of 13 | |
15 | Integers | |
16 | Algorithmic Analysis I | |
17 | Continuation of 16 | |
18 | Collections overview | |
19 | Collections overview | |
20 | Trees | |
21 | Trees, contd. | |
22 | Tree representation, searching | |
23 | Generic Programming | |
24 | Priority queues, range queries | |
25 | Hashing | |
26 | Sorting I | |
27 | Sorting II | |
28 | Still more sorting | |
29 | Balanced Search Structures I | |
30 | Balanced Search Structures II | |
31 | Pseudo-Random Sequences | |
32 | Threads, concurrency | |
33 | Threads, concurrency | |
34 | Backtracking search, game trees | |
35 | Search and game trees, contd., enumeration types | |
36 | Graphs, Introduction | |
37 | Graphs, more algorithms | |
38 | Graph algorithms, contd. | |
39 | Dynamic Programming | |
40 | Storage Management | |
41 | Garbage collection | |
42 | GUIs, Java-style | |
43 | No webcast | TA consultations only |
44 | Summary, Course Evals |
No comments:
Post a Comment