Readme, Course Information, Course Description, Dates, Photos Fun, Your Marks, Forum, Class submit
Andy's slides:
These are slides of
Andranik
Mirzaian.
My current thinking is to not cover it.
(Partly because I don't know it).
But you may find it useful.
Abstract Data Types:
(ppt,
Notes Data Structures)
(What the user of the data structure needs to know about how it is
used, without needing to know how it is implemented.)
Positions and Pointers:
(ppt)
(One data structure points at another forming linked lists and trees.
They are often a challenge for new programmers in C or Java.)
Contracts, Assertions, and Invariants:
(ppt,
Steps,
Notes Invariants,
Notes Data Structures)
(Big systems need clear specifications about how its parts
communicate. Big systems, data structures, and algorithms alike need
to have clear specifications that never change.)
(Jeff strongly believes that loop invariants is the most important topic in
Algorithms. Instead of worrying about the entire computation, only
worry about one step at a time - make progress while maintaining the
loop invariant.)
Asymptotic Analysis of Time Complexity:
(ppt,
Useful Math)
(We classify algorithms based on whether they are polynomial or
exponential time.)
Recursion:
(ppt,
Notes)
(Again do not try to understand the entire computation. Trust your
friends to solve a smaller instances of your problem and use these to
the solve your own instance.)
Balanced Trees:
ppt
(A great data structure storing objects is a binary tree. If it is
balanced than its depth is only log(n) with n nodes. Hence, operations
are quick.)
Maps Hash Tables and Dictionaries:
ppt
(Items are "randomly" placed in at table.)
Graph Search Algorithms
(ppt,
ass,
ass sol,
Soccer Strategies)
(Graphs, ie nodes and edges, are very useful for representing
data. The first task on them is to search through the nodes. )
Programming Methods:
(ppt,
greedy,
dynamic programming,
NP)
(There are a few programming meta-algorithms that most algorithms fit
into. These should be understood.)
Other:
(Andy's Text Processing and
Memory Management:)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.