Week(s)
|
Topic(s)
|
Chapter(s)
in Text |
1
|
Introduction
to Data Structure and Algorithms
|
|
1, 2
|
Complexity
Analysis of Algorithms: Running time calculations, Asymptotic Notation
(Big-O) for representing the complexity of an algorithm, Growth Rates of
Functions
|
Chapter 2
|
3
|
Searching: Linear search, binary search and their complexity
analysis
|
Chapter 2
|
3
|
Sorting
: Selection Sort, Insertion Sort, Bubble Sort
|
Chapter 9
|
4, 5, 6
|
Lists
: Array and linked implementations, advantages and disadvantages of each
implementation, list operations (search, insertion, deletion), ordered vs
un-ordered lists, merging two lists, lists in the C++ standard template
library (STL), applications
|
Chapter 3
|
7, 8
|
Stacks and Queues: Array and linked implementations, stacks
and queues in the STL, applications
|
Chapters 4
|
8
|
Recursion:
Recursive functions (review), stack frames, activation records
|
Chapter 5
|
9, 10, 11
|
Trees:
Basic concepts, binary search tree (BST), operations (search insertion,
deletion), tree traversals, applications
|
Chapter 6
|
12
|
Priority
Queues: ordered array, unordered array and heap implementations of a
priority queue, priority queues in the STL, applications
|
Chapters 4
and 6 |
12, 13
|
Hashing
: Hash functions, collision resolution, load factor, hash tables in the
STL (non-standard), applications
|
Chapter 10
|
13, 14
|
Graphs:
Basic concepts, graph representations, graph traversals, applications
|
Chapter 8
|
Course Notes and Resources
- Analysis of Algorithms- Searching and Sorting
Exercises and Reviews
- Math Review- Big-O Exercises
- Previous Exams (Midterm 1)
- Previous Exams (Midterm 2)
- Previous Exams (Final)
Code
- Integer Singly-Linked List- Doubly-Linked List
- DLList (Main)
- Stacks
- Queues
- Trees
- Hashing
No comments:
Post a Comment