1. |
|
complexity analysis
|
To make a tradeoff between space and
time complexity, one needs to have
some verifiable basis on which to make
the selection of data structure and
algorithms |
|
2. |
|
sets and maps
|
A set is a type of data structure where
the data can be grouped without an
order. Map allows the corresponding
data can be linked. |
|
3. |
|
hash
|
A hash table is a generalization of an
ordinary array. A hash table is effective
(영문) hash for implementing a dictionary. |
|
4. |
|
hashing function
|
Ideally, the hash function satisfies the
assumption of simple uniform
hashing(Def. any given element is equally
likely to hash into any of the m slots.) In
practice, it?s not possible to satisfy this
assumption, since we don?t know in
advance the probability distribution that
keys are drawn from, and the keys may
not be drawn independently. Often use
heuristics, based on the domain of the
keys, to create a hash function that
performs well. |
|
5. |
|
quadratic probing
|
If quadratic probing is used and the
table size is prime, then a new element
can always be inserted if the table is at
least half empty. Furthermore, in the
course of insertions, no cell is probed
twice. |
|
6. |
|
Tree
|
A type of data structure where the data
is organized as a tree with one root
Tree node. |
|
7. |
|
Binary Search Tree
|
A method to find a specific node in a
binary tree. |
|
8. |
|
AVL Tree
|
A prototype of balanced tree. The
following are descendent of AVL tree : red-black tree; splay tree; A-A tree. |
|
9. |
|
AVL Tree Insert
|
A method to insert nodes in an AVL
tree. |
|
10. |
|
heap sort
|
O(n lg n) worst case. It is similar to
merge sort. Sorts in place. It is similar
to insertion sort.
Combines the best of both merge and
insertion sort algorithms. |
|
11. |
|
heap algorithm
|
Heaps efficiently implement priority
queues. A heap gives a good
compromise between fast insertion
but slow extraction and vice versa. Both
operations take O( lg n) time. |
|
12. |
|
dynamic algorithm
|
Recursion with a caching of intermediary
results. Basis of comparison and alignment routines. |
|
13. |
|
greedy algorithm
|
Single-minded algorithm. Algorithm that
gobbles up all of its favorites first. |
|
14. |
|
game tree
|
Algorithm used for game programming.
It belongs to the artificial intelligence domain. |
|