Outco: Data Structures and Algorithms

Prepare for technical coding interviews with a deep dive into data structures & algorithms.

This data structures and algorithms course helps prepare software engineers for technical interviews. Learn about the building blocks used to develop efficient algorithms and build various fundamental data structures from scratch to understand how they work. Understand how to identify solutions that do not scale and develop techniques to create algorithms that do scale.


Structure
1. Video lecture topics

2. Problem Sets

  • [Easy] Target Practice : conducted in-class
  • [Medium] Homework Problems : provided in Github repo
  • [Hard] Extra Credit Homework Problems : provided in Github repo


3. Solutions
Solutions are provided in the following languages in code and video format. Coded solutions are provided in a shared folder. Please contact support for access.

[Code] Target Practice Code : Javascript, Python, Ruby, Java
[Code] Homework Code : Javascript, Python, Ruby, Java
[Code] Extra Credit Code : Javascript, Python, Ruby, Java
[Video] Homework Video : Javascript

4. Resource List
A collection of curated online resources to continue to learn more about each topic.

Topic Categories

  • Time/Space Complexity
  • Recursion: Various Algorithm Patterns
  • Data Structures: Linked List, Stack, Queue, Arrays, Binary Trees, Binary Search Trees, Heaps, Hash Tables, Graph
  • Sorting Algorithms: Basic Comparison Sorts, Recursive Comparison Sorts, Distribution Sorts
  • Search & Traversal : Binary Search, Tree Traversal, Graph Traversal
  • Dynamic Programming: Memoization and Tabulation

Language
The course is language agnostic, however examples are done in a mixture of JavaScript, Python, and Ruby. Target Practice and Homework along with tests are available for JavaScript, Python, Ruby, and Java.

Prerequisites
Proficient in either JavaScript, Python, Ruby, or Java.
Be able to follow JavaScript code.
Past exposure to data structures.
Basic algorithm problem solving skills.

Recommended Preparation Material
Basic Algorithms
Khan Academy - Algorithms Course
Leetcode


Your Instructor


Outco
Outco

Course Curriculum


  Application Diagramming
Available in days
days after you enroll
  Binary Heap
Available in days
days after you enroll
  Tries
Available in days
days after you enroll
  Object Oriented Design
Available in days
days after you enroll
  Extra Material: Target Practice Walkthrough
Available in days
days after you enroll
  Whiteboarding
Available in days
days after you enroll

Frequently Asked Questions


How much time should it take to complete the course?
The video, target practice, homework, and extra credit assignments will take on average 4-10 hours per section. It can take anywhere from 40-100 hrs to complete.
How long do I have access to the course?
You have access to the material indefinitely. Outco reserves the right to make changes to the course content without prior notice. Note: Students enrolled in the Outco Onsite program must remain in good standing to maintain access to onsite curriculum.
How to I get access to the target practice and homework?
The homework is provided in a private Github repo. Please contact support ([email protected]) to get access to the repo.
I found a typo or error, where can I report it?
Please contact us at [email protected]. Thank you for your feedback.

This course is closed for enrollment.