HOW DOES LEARNING DATA STRUCTURES AND ALGORITHMS IMPROVE PROBLEM-SOLVING SKILLS?