Hashing |
Primary clustering, secondary clustering, non-clustering |
|
Characteristics of a good hash function |
|
Linear probing, quadratic probing, double hashing, separate chaining |
|
Rehashing |
Priority Queues Algorithms for implementing |
Heap as an array |
|
Leftist heap |
|
Skew heap |
|
Binomial queue |
Sorting |
Stability, adaptive, complexity |
|
Bubble, insertion, selection, shell |
|
Quicksort, mergesort, heap sort |
|
Effect of data: few unique, almost in order |
|
Bucket sort |
|
TImsort: merge low/high, natural mergesort, insertion sort to increase minlength, galloping, merging similar sized adjacent runs |
Union Find |
Union by size, union by weight |
|
Path compression |
Graphs |
Directed, undirected, bipartite, weighted, connected/unconnected |
|
Depth first traversal, breadth first traversal, visited flag |
|
Adjacency matrix, adjacency list |