Category Archives: Fundamentals

Object Oriented Programming Principles

In this post, we will learn the history, advent and features/principles of Object Oriented Concepts (OOPS). As an aspiring developer/senior developer/architect, you need to very well understand these principles and apply it to real world problems.

What are Non Linear Data Structures

Non-Linear Data Structures are a classification of Non-Primitive Data Structures that organizes data in multilevel manner. Features of Non-Linear Data Structures Data Elements are arranged in a sorted order A Data Element has a Hierarchical Relationship to another Data Element All Data Elements cannot be traversed in a single run/iteration Complex to Implement Memory Utilization is […]


Stacks are powerful data structures that can help us solve many complex programming problems. Stacks can be used in some use-cases like: Develop UNDO functionality Build Compilers Evaluate Arithmetic Expressions Develop navigation features in our application (moving forward and backward) Structure of a Stack Stacks can be visualized as a stack of books. The peculiarity […]

Linked List

Linked Lists are one of the most commonly used Linear Data Structures after arrays. They solve many problems of arrays and are used for building complex data structures. Unlike arrays, Linked Lists can grow and shrink automatically. A Linked List has a sequence of nodes. Every node has a value & address to next node […]


Arrays are built into most programming languages and we use them to SORT a list of items sequentially. Since Arrays are a type of Linear Data Structures, they store data in the memory sequentially. For example, if we have a set of 5 integers [10, 20, 30, 40, 50], they would be allocated in the […]

What are Linear Data Structures

Linear Data Structures are a classification of Non-Primitive Data Structures that organizes data in a sequential, single-level manner. Features of Linear Data Structures Data Elements are arranged in an orderly manner Data Elements are attached adjacently Every Data Element can be accessed in one run/iteration Simple to Implement Memory Utilization is Ineffective because of linear […]

Big O Analysis

When it comes to Data Structures & Algorithms, there are 2 main factors that need to be analyzed every time. Time taken by the algorithm to finish [Time Complexity] Space needed by the algorithm for running the computation [Space Complexity] If your algorithm takes infinite amount of time to complete running, then your algorithm is […]

What are Data Structures

Data Structure is a way of organizing data so that it can be used effectively. WHY ARE DATA STRUCTURES IMPORTANT? They are essential ingredients in creating fast and powerful algorithms They help to manage and organize data They make code cleaner and easier to understand ABSTRACT DATA TYPE Before we understand the Data Structures, it […]