There are no items in your cart
Add More
Add More
Item Details | Price |
---|
Ace your data structures interview with expert guidance and hands-on practice
Instructor: Richa Sinha
Language: English
Validity Period: 365 days
Description:
This course covers a comprehensive range of data structures interview questions to help you prepare for technical interviews. You will learn to think analytically and critically about various data structures and how to effectively apply them in problem-solving scenarios.
Key Highlights:
What you will learn:
Arrays & Strings | |||
Given an array of integers, find two numbers that add up to a specific target. | |||
How would you find all unique triplets in an array that sum to zero? | |||
Find the contiguous subarray with the maximum sum. | |||
Return an array where each element is the product of all elements except itself. | |||
How do you move all zeroes in an array to the end while maintaining relative order? | |||
Traverse a matrix in spiral order. | |||
Find the length of the longest substring without repeating characters. | |||
What’s the longest palindromic substring in a given string? | |||
Given two strings, find the minimum window in s which will contain all the characters in t. | |||
How do you merge overlapping intervals? | |||
Given a rotated sorted array, search for a target element in O(log n) time. | |||
Given height array, compute how much water it can trap. | |||
How do you find the container that holds the most water? | |||
Find the duplicate number in an array containing n+1 integers. | |||
Sort an array containing only 0s, 1s, and 2s in-place (Dutch National Flag problem). | |||
Linked Lists | |||
How would you reverse a singly linked list? | |||
Detect if a linked list has a cycle. | |||
Merge two sorted linked lists. | |||
Remove the Nth node from the end of a list. | |||
Reorder a linked list as per a specific pattern (L0 → Ln → L1 → Ln-1 → …). | |||
Deep copy a linked list with next and random pointer. | |||
Add two numbers represented by linked lists. | |||
Find the intersection point of two linked lists. | |||
Reverse nodes of a linked list in k-group. | |||
Flatten a multilevel doubly linked list. | |||
Check if a linked list is a palindrome. | |||
Swap every two adjacent nodes in a linked list. | |||
Delete a node given only access to that node. | |||
Sort a linked list using merge sort. | |||
Rotate a linked list to the right by k places. | |||
Stacks & Queues | |||
Given a string of brackets, determine if the input is valid. | |||
Design a stack that supports getMin() in O(1) time. | |||
Implement a queue using two stacks. | |||
Implement a stack using two queues. | |||
Given daily temperatures, return how many days to wait for a warmer temperature. | |||
Find the maximum in each sliding window of size k. | |||
Evaluate an expression in Reverse Polish Notation. | |||
Decode a string encoded with format k[encoded_string]. | |||
Implement a basic calculator that can handle +, -, *, /, and parentheses. | |||
Given a string, remove k digits to make the smallest possible number. | |||
Find the largest rectangle in a histogram. | |||
Find the next greater element for each element in an array. | |||
Simplify a Unix-style file path. | |||
Simulate a collision of asteroids. | |||
Design a circular queue. | |||
Trees | |||
Write recursive and iterative inorder/preorder/postorder traversal of a binary tree. | |||
Implement level order and zigzag level order traversal of a tree. | |||
Find the lowest common ancestor of two nodes in a binary tree. | |||
Serialize and deserialize a binary tree. | |||
Validate if a binary tree is a valid binary search tree. | |||
Construct a binary tree from preorder and inorder traversal arrays. | |||
Flatten a binary tree into a linked list in-place. | |||
Determine if a binary tree is symmetric. | |||
Find the maximum path sum in a binary tree. | |||
Find the diameter (longest path) of a binary tree. | |||
Check if a binary tree is height-balanced. | |||
Count all root-to-leaf paths where the sum equals a target value. | |||
Find the kth smallest element in a BST. | |||
Get the right side view of a binary tree. | |||
Detect duplicate subtrees in a binary tree. | |||
Heaps & Priority Queues | |||
Merge k sorted linked lists. | |||
Return the top k frequent elements from an array. | |||
Design a class that supports insertion and returns the median in O(log n). | |||
Find the kth largest element in an unsorted array. | |||
Given tasks with cooldowns, determine the least time to finish all. | |||
Rearrange a string so that no two same characters are adjacent. | |||
Sort characters by frequency. | |||
Return the median of a sliding window. | |||
Connect ropes to minimize total cost. | |||
Hire k workers with minimum total cost. | |||
Find the k closest points to the origin. | |||
Find the smallest range that includes at least one number from each of the k lists. | |||
Trap rain water on a 2D grid (matrix). | |||
Design a Twitter clone using heaps. | |||
Find the nth super ugly number using a min-heap. | |||
Hashing / Hash Maps & Sets | |||
Find all anagrams of a pattern in a string. | |||
Group anagrams from a list of strings. | |||
Find the length of the longest consecutive elements sequence. | |||
Count the number of subarrays with sum equal to k. | |||
Determine if two strings are isomorphic. | |||
Given a pattern and a string, check if it follows the pattern. | |||
Check if an array contains nearby duplicates. | |||
Return the top k most frequent words. | |||
Count the number of palindromic permutations possible. | |||
Validate a 9x9 Sudoku board. | |||
Find the minimum index sum of two lists with common elements. | |||
Break a wall in a brick matrix to minimize the cut (brick wall). | |||
Is a number a "happy number"? | |||
Find all pairs that sum to a given value in an array. | |||
Detect duplicate email aliases. | |||
Tries (Prefix Trees) | |||
Implement a Trie with insert, search, and startsWith methods. | |||
Given a 2D board and a list of words, return all words present in the board. | |||
Replace words in a sentence using a dictionary of root words. | |||
Return the longest word in a dictionary that can be built one character at a time. | |||
Design a data structure to add and search words (with support for wildcards). | |||
Implement prefix and suffix search in a word dictionary. | |||
Auto-complete system: return top 3 suggestions given a prefix. | |||
Return suggested products after each character of a search word is typed. | |||
Find the maximum XOR of two numbers in an array using Trie. | |||
Given a list of words, find all concatenated words formed by two or more words in the list. | |||
Dynamic Programming | |||
Count how many distinct ways you can climb n stairs. | |||
Maximize the amount you can rob from houses without robbing two adjacent ones. | |||
Given coins and an amount, find the minimum number of coins needed. | |||
Can a string be segmented into valid dictionary words? | |||
Decode the number of ways to translate a digit string into letters. | |||
Find the longest increasing subsequence in an array. | |||
Find the maximum product subarray. | |||
Compute the edit distance between two strings. | |||
Count all palindromic substrings in a string. | |||
Find the longest palindromic subsequence in a string. | |||
Maximize coins by bursting balloons. | |||
Given a pattern and string, check if the pattern matches using * and ?. | |||
Given a regex pattern, match it against a string. | |||
Find the minimum path sum from top left to bottom right of a grid. | |||
Find the number of unique paths in a grid with obstacles. | |||
Can the array be partitioned into two subsets with equal sum? | |||
Check if a string can be formed by interleaving two others. | |||
Paint houses to minimize the cost with color constraints. | |||
Job scheduling with maximum profit and no overlaps. | |||
Maximum sum of non-adjacent elements in a circular array. | |||
Graphs | |||
Count the number of islands in a 2D grid. | |||
Clone an undirected graph. | |||
Can you finish all courses given prerequisites? (Topological sort) | |||
Find cells in a matrix from which water can flow to both Pacific and Atlantic. | |||
Detect a redundant connection in a graph that forms a cycle. | |||
Check if a graph is a valid tree. | |||
Merge accounts with common emails. | |||
Find the order of characters in an alien dictionary. | |||
Find all critical connections in a network (Tarjan’s algorithm). | |||
Transform a word to another by changing one letter at a time (Word Ladder). | |||
Calculate the time it takes for all nodes to receive a signal from one node. | |||
Find the town judge given trust relationships. | |||
Find all roots of Minimum Height Trees. | |||
Find cheapest flight within k stops. | |||
Find the minimum time to swim from top-left to bottom-right in rising water. | |||
Design-Oriented Data Structures | |||
Design a data structure with get, put, and getMin in O(1) time. | |||
Implement an LRU cache with constant time operations. | |||
Implement an LFU cache. | |||
Insert, delete, and get random element in O(1) time. | |||
Implement a data structure that supports increment/decrement of strings with O(1) operations. | |||
Design a versioned snapshot array. | |||
Design a file system with folders and file paths. | |||
Implement a rate limiter (hit counter). | |||
Design an autocomplete system based on frequency. | |||
Implement a random pick with weight. |
After successful purchase, this item would be added to your courses.
You can access your courses in the following ways :