Welcome to Lecture 3 of PIC10B, Spring 2016 edition! This is an intermediate course in programming using the C++ language.
Lecture 1 (Monday, March 28). Course introduction/overivew and the perils of floating point arithemtic.
Lecture 2 (Wednesday, March 30). Operator overloading. Overloading member
operators. Building a
Lecture 3 (Friday, April 1). Overloading non-member operators. Operator precedence. The Euclidean algorithm.
Lecture 4 (Monday, April 4). Finish operator overloading. The Euclidean algorithm (see Lecture 3 slides). Introduction to class inheritance.
Lecture 5 (Wednesday, April 6). More on class inheritance. Coding an example
of class inheritance with the
Animal class. Review of passing by reference
versus passing by value.
Lecture 6 (Friday, April 8). Pointers! Dynamically allocated memory. Heap versus stack.
Lecture 7 (Monday, April 11). Polymorphism.
Lecture 8 (Wednesday, April 13). Streams.
Lecture 9 (Friday, April 15). Streams (continued).
Lecture 10 (Wednesday, April 20). Overloading
>>. Finish streams.
Lecture 11 (Friday, April 22). Recursion!
Lecture 12 (Monday, April 25). More Recursion!
Lecture 13 (Wednesday, April 27). Sorting! Insertion sort and merge sort.
Lecture 14 (Friday, April 29). Comparison of sorting algorithms. Asymptotic notation and efficiency.
code: none today?!
Lecture 15 (Monday, May 2). Finish up sorting algorithms (Lecture 14). Searching algorithms (linear search and binary search).
Lecture 16 (Wednesday, May 4). Searching algorithms (see 15-lec.pdf).
Lecture 17 (Friday, May 6). Introduction to Data Structures: Arrays!
Lecture 18 (Monday, May 9). Linked Lists.
Lecture 19 (Wednesday, May 11). Implementation of linked lists.
Lecture 20 (Monday, May 16). Finish linked lists. Destructors. Stacks and Queues.
Lecture 21 (Wednesday, May 18). Finish Stacks and Queues. Start Sets.
Lecture 22 (Friday, May 20). Finish Sets. Maps. Binary Search Trees.
Lecture 23 (Monday, May 23). Implementing Binary Search Trees.
code: No code today!
Lecture 24 (Wednesday, May 25). Tree Traversal and Iterators.
Lecture 25 (Friday, May 27). Tree Traversals and Iterators.
Lecture 26 (Wendesday, June 1). Natural Text and Markov Chains.
Lecture 27 (Friday, June 3). Final Review!
Homework is due on Sundays at 5pm. Please submit your assignments through the CCLE website. You may submit as many times as you like before the deadline, and only your final submission will be graded. Late homework will not be accepted, however your lowest homework score will be dropped.