algorithm lab