Programming Languages & Techniques II

Course Overview: This course will cover the following topics

Data structures--what they are for, what Java provides for you (the Collections Framework), and how to go about constructing your own.
Recursion--an essential programming technique for working with data structures.
Algorithms--an introduction to a few of the "recipes" that people have discovered for solving certain kinds of problems (usually, but not necessarily, involving data structures).
Analysis of algorithms--the basic mathematics needed for determining how fast an algorithm runs, and (to a lesser extent) how much memory it requires.
Lecture
Download PPT lectures, assignments, etc.
Lecture 1
 Lisp (PPT)
 Lisp Primer at Texas A&M (Reading)
Lecture 2
 Recursion (PPT) 
Lecture 3
Lecture 4
Lecture 5
 Arrays (PPT)
 Sorting (PPT) 
Lecture 6
 Linked Lists (PPT) 
 Parsing Lisp (pseudocode) (PPT)
Lecture 7
Lecture 8
 Searching (PPT)
Lecture 9
 Help Implementing Lisp (parse() and toString(Sexpr)) (EX) 
My version of the assignment: LispInterpreter.zip (EX)
 Stacks (PPT)
Lecture 10
 Hashing (PPT)
Lecture 11
 ADTs (PPT)
Lecture 12
 First midterm exam (15%) (TEST)
Lecture 13
 Binary Trees (PPT)
Lecture 14
 ADTs, II (PPT)
Lecture 15
 Java I/O (Serialization in particular) (PPT)
Lecture 16
 Comparisons (PPT)
 Static (PPT)
Lecture 17
 Lists (PPT)
Lecture 18
 Sets and Maps (PPT) 
Lecture 19
 Using Maps (PPT)
Lecture 20
 Second midterm exam (15%) (TEST)
Lecture 21
 Trees (PPT)
Lecture 22
 Graphs (PPT)
 Shortest Path (Assign)
Lecture 23
Lecture 24
 Heapsort (PPT)
Lecture 25
 Quicksort (PPT)
Lecture 26
 Backtracking (PPT) 
 Ricochet (Assign)
Lecture 27
Lecture 28
 Algorithm Types  (PPT)
Most important links:
     Blackboard
     Dr. Dave's Schedule
     Textbooks for CIT 594
     Programming Requirements
     Collections Framework Tutorial
     Java API online
     Java API download

No comments: