CSCI 362 -- Exam 3 Review¶
Hash Table:¶
- insertion, removal, iteration with separate chaining
Divide and Conquer Algorithms (Non-sorting):¶
nth_element
- recursive median-of-five
- how does it work
- recurrence
Comparison-based Sorting:¶
- Shell Sort
- h-sort
- choosing a good "h" sequence
- Merge Sort
- merge operation
- out-of-place merge
- Quick Sort
- partition (<=, >)
- three-way partition (<, ==, >)
- choosing a good pivot
- How each perform when data is:
- reversed
- sorted
- almost sorted
Non-comparison-based Sorting:¶
- Radix Sort
- Counting Sort
- Complexity
- Limitations
Disjoint Sets¶
- Logical operations
- Be able to "trace" through sequence of operations
Graphs:¶
- Representation
- Adjacency Matrix
- Adjacency List
- Terms
- Vertices, Edges
- Directed vs. Undirected
- Disconnected, Connected, Complete
- Strongly vs. Weakly connected
- Minimum Spanning Tree
- Cycles
- Algorithms
- Searching
- Breadth-First
- Depth-First
- Be able to trace through an example!
- Topological Sort
- When to use
- Algorithm
- Be able to trace through an example
- Minimum Spanning Tree
- Prim's vs. Kruskal's
- how both work
- comparison between the two
- be able to trace through an example
- Complexity
- Shortest Path
- Dijkstra's
- complexity
- be able to trace through an example
- Bellman-Ford
- Note: they (ultimately) do the same thing
ACM Code of Ethics¶