Problem Solving

Problem Solving

Intermediate
Get Certificate

Solving problems is the core of computer science. Programmers must first understand how a human solves a problem, then understand how to translate this "algorithm" into something a computer can do, and finally how to write the specific code to implement the solution. At its core, problem-solving focuses on the study, understanding, and usage of data structures and algorithms. 

This competency area includes usage of hash maps, stacks, queues, heaps, and analyzing run-time complexities and space complexities, among others. 

Key Competencies:

  1. Data Structures - Use data structures such as hash maps, stacks, queues, heaps. Manipulate single or double-linked lists, and maintain basic information about subtrees, node distances, etc.
  2. Algorithms - Use optimal solutions to solve problems. Analyze run-time complexities and space complexities. Create simple dynamic programming-based algorithms.