Self Introduction To Data Structures and Algorithms

Posted by Vanessa Fotso on January 17, 2021



Data structures and algorithms is one of the most important subjects to master as a software engineer. These two topics represent the key to become a better programmer and write clean programs that not only perform well but also able to handle future changes.

As I am diving into those topics and learning the fundamentals, I will be making several posts covering my understanding of the following concepts:

Data Structures


These are the building blocks of any programs. Thus, it is important to understand how the most common data structures work, the complexity of their operations and how to implement them. The most common structures I’ll go over include Arrays, Linked Lists, Stacks, Queues, Hash Maps, Graph and Trees and Heaps.

Algorithms


Algorithms are techniques or procedures used to solve problems. Most popular techniques include sorting, binary search, search, string matching, recursion, hash algorithm, greedy algorithm, divide and conquer algorithm, backtracking algorithm, and dynamic programming.

Data structures and algorithms go hand to hand. Each algorithm technique is applied to specific data structure. And more often, we will need to combine several techniques to solve a problem.

I will be focusing on learning each concept one at the time and practice problems on Leetcode and HackerRank .

Learning Resource

learn.co
GeeksforGeeks
freeCodeCamp

Let’s keep the momentum…