DSA Basics

37 lessons89 min total



  1. Understand The Singly Linked List and its Operation
    A singly linked list, in its simplest form, is a collection of nodes that collectively form a linear…


    3 min





  2. Implementation of Singly Linked List in Python
    In a singly linked list, we have an ordered list of items as individual Nodes that have pointers…


    1 min





  3. Understand Doubly Linked List Data Structure
    In a doubly linked list, we define a linked list in which each node keeps an explicit reference…


    2 min





  4. Implementation of Doubly Linked List in Python
    In Doubly Linked List, We declare two pointers to store location of next Node and previous Node.


    1 min





  5. Singly Linked List Cycle Check in Python
    Given a singly linked list, write a function which takes in the first node in a singly linked…


    1 min





  6. Linked List Nth to Last Node in Python
    Write a function that takes a head node and an integer value n and then returns the nth…


    1 min





  7. Linked List Reversal in Python
    Write a function to reverse a Linked List in place. The function will take in the head of…


    1 min





  8. Algorithm Big-O Notation Examples
    Big-O (in its simplest form) reduces the comparison between algorithms to a single variable. That variable is chosen…


    3 min





  9. Big-O Complexity for Python Data Structures
    Big-O Complexity for Python Data Structures


    2 min





  10. Implement a Queue Using Two Stacks in Python
    Given the Stack class below, implement a Queue class using two stacks


    1 min





  11. Introduction to Recursion
    The first is when recursion is used as a technique in which a function makes one or more…


    2 min





  12. Implementation of Selection Sort in Python
    The selection sort improves on the bubble sort by making only one exchange for every pass through the…


    1 min





  13. Implementation of Shell Sort in Python
    The shell sort improves on the insertion sort by breaking the original list into a number of smaller…


    1 min





  14. Implementation of a Hash Table in Python
    The idea of a dictionary used as a hash table to get and retrieve items using keys is…


    1 min





  15. Linear Search or Sequential Search in Python
    sequential search is a method for finding an element within a list. It sequentially checks each element of…


    2 min





  16. Introduction to Singly Linked List
    Singly Linked List Singly Linked List is a linear and connected data structure made of Nodes. Each node…


    1 min





  17. Time Complexity
    What is Time Complexity? Time complexity is a key concept in computer science, particularly in data structures and…


    3 min





  18. DSA: Concept of Array
    A group of related data elements stored at adjacent memory locations is referred to as an array. One…


    2 min





  19. Prefix Sum in Arrays
    What is Prefix Sum? Prefix Sum is a method for dealing with array manipulation challenges. It entails establishing…


    2 min





  20. Array Carry Forward
    What is Carry Forward? The word “carry forward” does not refer to a specific idea in data structures…


    2 min





  21. DSA: SubArray
    What is a SubArray? A subarray is a sequence of elements within an array that is contiguous. In…


    2 min





  22. DSA: 2D Array
    What is a 2D Array? A 2D matrix is a two-dimensional array that contains rows and columns in…


    2 min





  23. DSA: Sliding Window Technique
    What is the Sliding Window Technique? The Window Sliding Technique is a technique for reducing the time complexity…


    3 min





  24. DSA: Bits Manipulation
    What is Bits Manipulation? The process of modifying individual bits or groups of bits within a binary representation…


    3 min





  25. DSA: Modular Arithmetic
    What is Modular Arithmetic in DSA? Modular arithmetic is an arithmetic structure for integers, in which numbers “wrap…


    3 min





  26. Sorting in DSA
    What is Sorting in DSA? Sorting is a fundamental function in data structures and computer science. It is…


    2 min





  27. Bubble Sort
    What is Bubble Sort? When neighboring components are arranged incorrectly, the straightforward comparison-based sorting algorithm known as Bubble…


    2 min





  28. Pointers in DSA
    What are pointers? Pointers are variables that are used to save the position of a value in memory.…


    4 min





  29. Stack in DSA
    What is a Stack? A stack is an abstract data type that adheres to the Last-In-First-Out (LIFO) principle…


    9 min





  30. Queues in DSA
    What is a Queue in DSA? A queue is a linear data structure that holds elements in a certain order. It accesses items using the FIFO (First In First Out) method. It can only be changed by adding data entities at…


    4 min





  31. Binary Trees: Structure & Tree travels
    Binary Tree Structure: A binary tree is a tree data structure where each node has at most two…


    2 min





  32. Types of Views & Binary Trees
    In binary trees, the views and types refer to different perspectives and classifications of the tree structure. Types…


    2 min





  33. Binary Search Tree (BST)
    A Binary Search Tree (BST) is a type of binary tree that satisfies the following properties: For any…


    3 min





  34. Trees: Lowest Common Ancestor
    What is the Lowest Common Ancestor? In a tree, the lowest common ancestor (LCA) of two nodes, n1…


    3 min





  35. DSA: Trie
    What is a Trie in DSA? A trie, often known as a prefix tree, is a tree-like data…


    5 min





  36. DSA: Heap
    A heap is a specialized tree-based data structure that satisfies the heap property. It is commonly used to…


    5 min





  37. Find Intersection of Two Singly Linked Lists
    You are given two singly linked lists that intersect at some node. Your task is to find and…


    2 min