Data Structures & Algorithms

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

Questions List

  • StackImplement a stack data structure containing the common stack methods
    Languages
    JSTS
  • Insertion SortImplement a function that performs an insertion sort
    Languages
    JSTS
  • Binary SearchImplement a function that performs binary search on an array of numbers
    Languages
    JSTS
  • Breadth-first SearchImplement a breadth-first search algorithm that traverses a directed graph in a breadth-first manner
    Languages
    JSTS
  • Depth-first SearchImplement a depth-first search algorithm that traverses a directed graph in a depth-first manner
    Languages
    JSTS
  • Heap SortImplement a function that performs a heap sort
    Languages
    JSTS
  • QueueImplement a queue data structure containing the common queue methods
    Languages
    JSTS
  • Event EmitterImplement a class that can subscribe to and emit events that trigger attached callback functions
    Languages
    JSTS
  • Merge SortImplement a function that performs a recursive merge sort
    Languages
    JSTS
  • Quick SortImplement a function that performs a recursive quick sort
    Languages
    JSTS
  • Topological SortImplement a function that performs a topological sort
    Languages
    JSTS
  • Selection SortImplement a function that performs a selection sort
    Languages
    JSTS
  • Unique ArrayImplement a function to remove all duplicate values from an array
    Languages
    JSTS
  • Data MergingImplement a function to merge rows of data from the same user
    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
    Languages
    JSTS
  • Transfer ListBuild a component that allows transferring of items between two lists
    Available frameworks
  • Undoable CounterBuild a counter with a history of the values and ability to undo/redo actions
    Available frameworks
  • Backbone ModelImplement a class resembling Backbone.Model which allows storing of attributes/values and responding to changes in specific attribute values
    Languages
    JSTS
  • Data SelectionImplement a function to filter rows of data matching a specified requirement
    Languages
    JSTS
  • Table of ContentsImplement a function to construct a table of contents from an HTML document
    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
    Available frameworks
  • WordleBuild Wordle, the word-guessing game that took the world by storm
    Available frameworks