Discovered some old notes for software dev interview prep.: Database normalization!
| Normal form | Criteria |
|---|---|
| 1NF | only atomic attribute values |
| 2NF | all non-key attributes are functionally dependent on a key |
| 3NF | no transitive dependencies between non-key attributes |
| BCNF | no transitive dependencies between key attributes, every determinant is key |
| 4NF | no pair-wise, independent, multi-value dependencies between attributes |
| 5NF | no JOIN-dependency |
On the same prep. sheet:
Knuth-Morris-Pratt algorithm (KMP) for String/Substring-Problem is in O(n + k)