October 31, 2013 Computer Science Exam #3 Overview
-
Stacks
- Array implementation
- Linked List Implementation
- Run times of each operation
- All operations are of O(1)
-
Queues
- Array Implementation
- Linked List implementation
- Run times of each operation ( for multiple implementaitons )
- Linked List Insert (O(n) with single pointer to front, O(1) if pointer to both front and back)
- Array Insert (O(1))
- Push O(1)
-
Binary Trees
- Traversals
- Depth-First Traversal
- Inorder,postorder,preorder
- Depth-First Traversal
- Insert: O(1) Best, O(log(n)) average, O(n) worst
- Search: O(1) Best, O(log(n)) average, O(n) worst
- Delete: O(1) Best, O(log(n)) average, O(n) worst
- Target with no child
- Target with one child
- Target with two children
- Find Largest node in target->left OR
- Find Smallest node in target->right
- Writing General Function
- Analysis ( Best Case, Average Case, Worst Case )
- Binary Search: Best case O(1), O(log(n)) Average, O(n) Worst
- Traversals
-
AVL Trees
- Definition
- [~] Insert
- [~] Delete
- Analysis
-
Binary Heaps
- Definition
- How to Store
- [] Insert
- Delete Min
-
Hash Tables
- Linear probing strategy for collisions
- Quadratic Probing Strategy for collisions
- Separate Chaining Hashing Strategy for collisions
-
Base Conversion
- Any base to base 10
- AF5 = 1016^2+1516^1+5*16^0
- Base 10 to any base
- Divide, remainder, keep least significant
- Converting between bases that are perfect powers of 2
- Figure out groups of bits to represent each digit by using g=log(n)
- Write each digit by g number of bits.
- Any base to base 10