Become a DSA ka 14

Resources: 30 Days Coding

Follow me: @Twitter, @GitHub, @Instagram, @Linkedin

DSA ke 14 patterns 😉


Arrays are a fundamental data structure that store elements of the same type in a continuous block of memory. They're crucial in understanding more advanced data structures and algorithms.

Hash Maps, Tables

A hash table (or hash map) is a data structure that implements an associative array abstract data type, a structure that can map keys to values.


Pointers are a fundamental concept in programming that hold the memory address of a value.

Linked List

A linked list is a linear data structure where each element points to the next.

Sliding Window

Sliding window is an algorithmic paradigm that provides a solution for problems dealing with arrays or lists.

Binary Search

Binary Search is an efficient algorithm for finding an item from a sorted list of items.


Recursion is a method of solving problems where the solution depends on solutions to smaller instances of the same problem.


Backtracking is an algorithmic technique for solving problems recursively by trying to build a solution incrementally.


Breadth-first search (BFS) and depth-first search (DFS) are algorithms for traversing or searching tree or graph data structures.

Dynamic Programming

Dynamic Programming is an algorithmic paradigm that solves a complex problem by breaking it into simpler subproblems and stores the results of subproblems to avoid computing the same results again.


A tree is a widely used abstract data type that simulates a hierarchical tree structure.


A Graph is a non-linear data structure consisting of nodes and edges.

Topological Sorting

Topological Sorting for a directed acyclic graph (DAG) is a linear ordering of vertices such that for every directed edge u, v, vertex u comes before v in the ordering.

Greedy Algorithms

Greedy algorithm is an algorithmic paradigm that follows the problem solving approach of making the locally optimal choice at each stage with the hope of finding a global optimum.

Priority Queue

A priority queue is a special type of queue in which each element is associated with a priority and is served according to its priority.


A Trie, also called digital tree and sometimes radix tree or prefix tree, is a kind of search tree—an ordered tree data structure that is used to store a dynamic set or associative array where the keys are usually strings.

Additional Topics

Kadane’s algorithm

Kadane's algorithm is used to find the largest sum contiguous subarray within a one-dimensional numeric array.

Djikstra’s algorithm

Dijkstra’s algorithm is a popular search algorithm used to determine the shortest path between nodes in a graph.

AVL Trees

An AVL tree is a self-balancing binary search tree, and it was the first such data structure to be invented.


Sorting refers to arranging data in a particular format, either ascending or descending.

© Your Name.RSS