CS211 Lecture Notes

Lecture Date Topics Examples/notes Reading Lecturer
Data Structures and Algorithms for Machine Learning ) May 3, 5 Machine Learning,
Decision Trees,
What Computer Science Is (and Isn't)
Decision Tree Lecture RC
The Java Virtual Machine (cont.) 28 Apr Class loading and initialization
Object initialization
Method dispatch
Exception handling
Java security model
Bytecode verification
Stack inspection
The Java Virtual Machine (cont.) C. Fournet and A. D. Gordon. Stack Inspection: Theory and Variants. ACM Trans. Prog. Lang. and Sys. (TOPLAS) 25:3(May 2003), 360-399.
D. Wallach and E. Felten. Understanding Java Stack Inspection. Proc. IEEE Symp. Security and Privacy, May 1998.
DK
The Java Virtual Machine 26 Apr Java compilation
Class file format
Java bytecode
The Java Virtual Machine
BytecodeExamples.zip
JVM Spec DK
Search Trees 21 Apr Binary search trees
AVL trees
2-3 trees
Search Trees
TreeSearch.java
24.27-30, 26, 28.1-21 DK
GUI dynamics 19 Apr events
listeners
handlers
GUI dynamics
examples
JFC Tutorial DIS
GUI Statics 14 Apr components
containers
layout managers
GUI Statics
examples
JFC Tutorial DIS
Graphs (cont.) 12 Apr Graphs
minimum spanning trees
generics in Java 1.5
exceptions
Graphs (cont.) Chapter 29 DK
Graphs 7 Apr Graphs
DFS, BFS, topological sort
coloring, planarity
Dijkstra's algorithm
Graphs Chapter 29 DK
Abstract Datatypes (cont) 5 Apr priority queues, heaps ADTs (cont)
PriorityQueue.java
nlogn lower bound for comparison sorting
24.31-33, 27 DK
Abstract Datatypes and their Implementation 31 Mar searching and sequence structures
queues, stacks, extensible arrays (Vectors)
Hashsets and Hashtables
dictionaries
ADTs Chapters 16-23 DK
Generic Programming 29 Mar Generic programming
Iterator and Iterable interfaces
Inner classes
generic
remora videos
Chapters 7,8 DK
Asymptotic Complexity 15 Mar, 17 Mar Big-O notation complexity Chapter 9 RC
Sorting (continued) 10 Mar select sort
merge sort
quick sort
sort
BasicSorting
MergeSort
QuickSort
11.0-11.8
12.0-12.18
RC
Searching
Asymptotic Complexity
Sorting
8 Mar searching: linear, binary
binary search
asymptotic time complexity
sorting: select sort, merge sort, quick sort
search.and.bigO
SearchIntArray
SearchComparableArray
Chapter 16
11.0-11.8
12.0-12.18
9.0-9.11
RC
Interfaces,
Comparable
3 Mar interfaces cont.
interface Comparable
Comparable DK
Interfaces 1 Mar subtyping
interface rules
implementing an interface
type checking
Interfaces 2.31, A.10,
Chapter 3 (except 3.27, 3.28)
DK
Trees 24 Feb tree definitions
applications
parsing
Trees
TreeCell.java
24.0-24.16, 24.18, 24.20-24.26, 24.35
25.0-25.11, 25.18-25.20
RC
Lists (continued) 22 Feb insertion and deletion
doubly-linked lists
Lists Chapters 4, 6, and A.84-A.88
Chapter 5 is optional
RC
Lists 17 Feb first dynamic data structure
introduction to singly-linked list
ListCell class
building and searching
Lists
ListCell.java
List.java
Chapters 4, 6, and A.84-A.88
Chapter 5 is optional
RC
Inheritance 15 Feb subclass/superclass relationships
overriding methods and fields
using "this" and "super"
subtyping
abstract classes
Inheritance
Test.java
Test0.java
Test1.java
Test2.java
Chapter 2 DK
Object-Oriented Programming 10 Feb objects
data abstraction
references
garbage collection
OOP Chapter 1
Appendix A
DK
Grammars and Parsing 5 Feb application of recursion
grammars
parsing
expression parsing
code generation
Parsing
AddParser.java
AddParserWithScanner.java
CS211In.pdf
CS211In.java
CS211InInterface.java
CS211Out.java
CS211OutInterface.java
24.34, A.5,
lecture notes
RC
Recursion 3 Feb Recursive programs
frames and recursive calls
Recursion
Power.java
Hanoi-Recursive.java
Hanoi-Iterative.java
10.0-10.18, 10.26-10.32,
10.34-10.36, 10.40-10.41
DK
Induction 1 Feb Induction
Induction lecture notes
Gauss
DK
Java Review Jan 27 Classes, objects, primitive and reference types, array representation, the Java API, command line interface, new features of J2SE 5.0, debugging and experimentation Lecture 2
Examples.zip
Java API
Appendix A
DK
Introduction Jan 25 Course policies and procedures
8-Puzzle application
SaM application
Introduction
SaM
Puzzle
Preface (iv-v)
Introduction (1-3)
Sam Loyd
RC