Fundmental Computer Science Algorithms