Dynamic programming, Linked Lists, Trees.