Enjoy 20% off all plans by following us on social media. Check out other promotions!

Data Structures & Algorithms

Number of questions
22 questions
Recommended duration to spend during interviews
490 mins
Hone your computer science fundamentals by implementing important data structures and algorithms from scratch and practice the questions where algorithmic efficiency is key.

All Practice Questions

Coding Format
Number of questions
22 questions
Total time
9 hours total

Questions List

  • 1
    StackImplement a stack data structure containing the common stack methods
    Difficulty
    Easy
    Languages
    JSTS
  • 2
    Insertion SortImplement a function that performs an insertion sort
    Difficulty
    Easy
    Languages
    JSTS
  • 3
    Binary SearchImplement a function that performs binary search on an array of numbers
    Difficulty
    Medium
    Languages
    JSTS
  • 4
    Breadth-first SearchImplement a breadth-first search algorithm that traverses a directed graph in a breadth-first manner
    Difficulty
    Medium
    Languages
    JSTS
  • 5
    Depth-first SearchImplement a depth-first search algorithm that traverses a directed graph in a depth-first manner
    Difficulty
    Medium
    Languages
    JSTS
  • 6
    Heap SortImplement a function that performs a heap sort
    Difficulty
    Medium
    Languages
    JSTS
  • 7
    QueueImplement a queue data structure containing the common queue methods
    Difficulty
    Medium
    Languages
    JSTS
  • 8
    Event EmitterImplement a class that can subscribe to and emit events that trigger attached callback functions
    Difficulty
    Medium
    Languages
    JSTS
  • 9
    Merge SortImplement a function that performs a recursive merge sort
    Difficulty
    Medium
    Languages
    JSTS
  • 10
    Quick SortImplement a function that performs a recursive quick sort
    Difficulty
    Medium
    Languages
    JSTS
  • 11
    Topological SortImplement a function that performs a topological sort
    Difficulty
    Medium
    Languages
    JSTS
  • Selection SortImplement a function that performs a selection sort
    Difficulty
    Easy
    Languages
    JSTS
  • Unique ArrayImplement a function to remove all duplicate values from an array
    Difficulty
    Easy
    Languages
    JSTS
  • Data MergingImplement a function to merge rows of data from the same user
    Difficulty
    Medium
    Languages
    JSTS
  • Event Emitter IIImplement a class that can subscribe to and emit events that trigger attached callback functions. Subscription objects are returned and can unsubscribe itself
    Difficulty
    Medium
    Languages
    JSTS
  • Transfer ListBuild a component that allows transferring of items between two lists
    Difficulty
    Medium
    Available frameworks
  • Undoable CounterBuild a counter with a history of the values and ability to undo/redo actions
    Difficulty
    Medium
    Available frameworks
  • Backbone ModelImplement a class resembling Backbone.Model which allows storing of attributes/values and responding to changes in specific attribute values
    Difficulty
    Hard
    Languages
    JSTS
  • Data SelectionImplement a function to filter rows of data matching a specified requirement
    Difficulty
    Hard
    Languages
    JSTS
  • Table of ContentsImplement a function to construct a table of contents from an HTML document
    Difficulty
    Hard
    Languages
    HTMLJSTS
  • Transfer List IIBuild a component that allows transferring of items between two lists, bulk selection/unselection of items, and adding of new items
    Difficulty
    Hard
    Available frameworks
  • WordleBuild Wordle, the word-guessing game that took the world by storm
    Difficulty
    Hard
    Available frameworks