Algorithms for Coding Interviews

with problems and solutions

Ratings 4.49 / 5.00
Algorithms for Coding Interviews

What You Will Learn!

  • Understand the inner working of the most common algorithms used in coding interviews
  • Identify which algorithm is a better fit depending on the problem
  • Improve your problem solving skills
  • Improve your interviewing skills

Description

What will you learn from the course?


  • By the end of the course, you will have a better idea of the type of problems asked in coding interviews and how to approach them to implement a viable solution.

  • You will also learn the most common algorithms used in coding interviews, and more importantly, when to use them.

  • You will improve your problem-solving skills and interviewing skills.


About the Instructor


David has more than 10 years of experience teaching the Algorithms Design and Analysis course at Universidad Panamericana. He has been involved in the ACM-ICPC programming team of the university as a contestant, coach, and advisor.


David is a Principal Software Engineer with more than 10 years of experience in the industry, having worked at Amazon and Oracle. He also has worked at Karat as a contractor to interview engineers for companies such as Roblox, Indeed, Walmart, Palantir, and others. He has interviewed hundreds of candidates during his trajectory and has participated as a problem setter for questions used in recruitment processes.


He is the founder of dnd-learning, where he creates educational content related to algorithms.  He provides guidance and mentorship for coding interviews and constantly publishes material about algorithms and interviews. He is co-author of the book "Algorithms for Competitive Programming".


Material


  • The slides of the course are available for download.

  • For each coding exercise in the course, it is provided the code with the implementation, and a document explaining the solution.

  • The coding questions are public to practice, and all of them have automated test cases.


Content of the Course


  • Introduction

    • Objectives

    • Motivation

    • Tools that will be used during the course

  • Complexity Analysis

    • Importance of identifying time and space complexity in an interview

    • Common types of complexities

    • Interview tips

    • Coding exercises

  • Data Structures I

    • Linear data structures: Vector, list, queue, and stack

    • Tree data structures

    • Interview tips

    • Coding exercises

  • Data Structures II

    • Hashing data structures

    • Interview tips

    • Coding exercises

  • Graphs

    • Definition

    • Types of graphs

    • Paths and cycles

    • Representation of a graph

    • Graph traversal

    • Interview tips

    • Coding exercises

  • Dynamic Programming

    • Definition

    • How to approach a problem with dynamic programming

    • Examples of DP problems

    • Interview tips

    • Coding exercises

  • Backtracking

    • Definition

    • How to implement a backtracking solution

    • When is a good idea to use backtracking

    • Example: Sudoku

    • Interview tips

    • Coding exercises

Who Should Attend!

  • New graduates and experienced engineers preparing for a coding interview

TAKE THIS COURSE

Tags

  • Algorithms
  • Coding Interview

Subscribers

117

Lectures

86

TAKE THIS COURSE



Related Courses