2.1 -  Algorithms