CS202 -- Lecture Notes
The lecture notes are in a bitbucket repo, so that you can pull and run the example
code yourself. Do:
git clone git@bitbucket.org:jimplank/cs140_lecture_notes.git
or
git clone https://jimplank@bitbucket.org/jimplank/cs140_lecture_notes.git
For C++ reference material, see
http://www.cppreference.com/ or
www.cplusplus.com. These are
excellent
sources of online reference and tutorial material for C++. If you need a
book to help you with C++, try
"Teach Yourself C++", 3rd Ed., Herbert Schildt." -- one cent from Amazon.
For learning vi/vim,
http://vim-adventures.com/ is
a "game" to learn vim.
- Lecture 0: Unix, vi, files and compiling
- Lecture 1: C++ Review -- Reading from standard input
- Lecture 2: Output -- In particular, Printf
- Lecture 3: String and Vector Basics
- Lecture 4: An introduction to Topcoder
- Lecture 5: Argc, argv and stringstreams
- Lecture 6: Vectors of Vectors
- Lecture 7: Procedures, Prototypes, Reference Parameters, Const
- Lecture 8: Classes, header/source/object/exectuable files
- Lecture 8a: Bit Arithmetic.
- Lecture 9: Hashing.
- Lecture 10: Polymorphism, Introduction to Exceptions
- Lecture 11: Pointers, and setting up data structures
that share data using pointers.
- Lecture 12: Constructors, Destructors, the Assignment Overload and Exceptions
- Lecture 13: A very small lecture on sorting with the STL.
- Lecture 14: Lists, Iterators, Bad Vector Usage, Deques.
- Lecture 15: Sets and Maps.
- Lecture 16: Big-O.
- Lecture 17: Unordered Sets and Maps.
- Lecture 18: Linked Data Structures: Stacks, Queues and Doubly Linked Lists.
- Lecture 19: Recursion.
- Lecture 20: A Recursive Sudoku Solver.
- Lecture 21: The basics of Trees, and basic Binary Search Trees.
- Lecture 22: AVL Trees.
- Lecture 23: A tree and recursion problem from Topcoder:
TreesAndBrackets (some years I have also gone over this recursion problem:
Halving).
- Lecture 24: Priority Queues and Binary Heaps.
- Lecture 25: Templates.
- Lecture 26: Implementing classes with a (void *).
- Lecture 27: Running Times.
Not sure what I'm doing with these yet.