coding-interview-concepts

Dynamic Array

What is Dynamic Array? Why do we use them? The drawback of arrays is that we cannot adjust their size in the middle of the code execution…

EnjoyAlgorithms

Introduction to Arrays In Data Structures

Introduction An array is a contiguous block of memory of the same type of elements where the size is equal to the number of elements in that…

EnjoyAlgorithms

Introduction to Heap Data Structure

What is a Heap? A heap is a complete binary tree structure where each element satisfies a heap property. In a complete binary tree, all…

EnjoyAlgorithms

Sorting Algorithms Comparison

Why do we study the design, code, and analysis of the sorting algorithms? Here are some critical reasons: We can learn several problem…

EnjoyAlgorithms

Introduction to Data Structures

Why should we learn data structures? The code of a well-designed algorithm using data structure is just like a structure of a good house…

EnjoyAlgorithms

Introduction to Hashing

Millions of users on the internet are generating terabytes of content every day, and the amazing part is: the amount of content is doubling…

EnjoyAlgorithms

Recursive Tree Traversals of a Binary Tree: Preorder, Inorder and Postorder Traversal

Introduction to tree traversal  To process data stored in the tree data structure, we need to traverse each node of the tree. The process to…

EnjoyAlgorithms

Iterative Binary Tree Traversal using Stack: Preorder, Inorder and Postorder

Introduction to iterative tree traversals In all recursive DFS traversals of a binary tree, we have three basic elements to traverse— root…

EnjoyAlgorithms

Level Order Traversal of a Binary Tree :  Breadth First Search

Introduction to level order traversal In the DFS traversal of a binary tree, we access nodes in three different orders — preorder, postorder…

EnjoyAlgorithms

Time complexity analysis in Data Structure and Algorithms

Why analysis of algorithms is important? Deciding the efficient algorithm among more than one algorithms. Estimating algorithm performance…

EnjoyAlgorithms

Analysis of Recursion in Data Structure and Algorithms

Recursion is one of the popular problem-solving approaches in data structure and algorithms. Even some problem-solving approaches are…

EnjoyAlgorithms

Analysis of loop in Programming

Loop is a fundamental problem-solving operation in programming. A lot of coding problem solutions involve various kinds of loop structures…

EnjoyAlgorithms

Introduction to Sorting Algorithms: Bubble Sort, Selection Sort and Insertion Sort

Input: An array X[] of n integers Output: A permutation (reordering) of input such that X[0] <= X[1] <= X[2] .... <= X[n-2] <= X[n-…

EnjoyAlgorithms

Concept of Iteration and Loop in Programming

What is iteration in programming? To solve a problem, sometimes it is necessary to repeat a particular code statement several times…

EnjoyAlgorithms

Step by Step Guide for Cracking the Coding Interview

Most programmers need to realize the importance of data structure and algorithms as early as possible in their careers. The reason would be…

EnjoyAlgorithms

What is an Algorithm? Properties and Applications of Algorithms in real life

Before the invention of computers, there were algorithms. Now computers are everywhere, so algorithms are everywhere! Algorithms lie at the…

EnjoyAlgorithms

Recursion Explained: How recursion works in Programming?

Recursion means “solving the problem via the solution of the smaller version of the same problem” or “defining a problem in terms of itself…

EnjoyAlgorithms

How to develop algorithmic thinking in data structure and algorithms?

Algorithmic Thinking has recently become a buzzword among programmers. It is a method for solving problems based on a clear definition of…

EnjoyAlgorithms

Subscribe our Newsletter

Get well-designed application and interview centirc content on ds-algorithms, machine learning, system design and oops. Content will be delivered weekly.