Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Blueprint: Ace Backtracking/Recursion Interview Problem
Rating: 4.0 out of 5(3 ratings)
808 students

Blueprint: Ace Backtracking/Recursion Interview Problem

Compiled list of Leetcode questions to Ace your Next Interview
Last updated 12/2023
English

What you'll learn

  • Master problem-solving with various data structures and algorithms, tackling challenges from easy to hard.
  • Develop proficiency in addressing classical coding interview questions.
  • Learn the art of breaking down interview problems systematically.
  • Enhance your problem-solving skills through practical application.

Course content

1 section14 lectures1h 54m total length
  • Letter Case Permutation12:42

    Transform each letter of the input string to lowercase or uppercase to generate all possible strings, leaving digits unchanged, using backtracking with a base case at full length.

  • Letter Combinations of a Phone Number5:19

    Explore backtracking and recursion to generate all letter combinations of a phone number by mapping digits 2–9 to letters, using a helper function to build and collect results.

  • Subsets7:48

    Explore how to generate all subsets and the power set of an array of unique elements using backtracking and recursion, with include/exclude decisions and binary patterns guiding the process.

  • Subsets II7:25

    Learn to generate the power set for arrays with duplicates by sorting and using a duplication-prevention rule in backtracking and recursion, producing only unique subsets for subsets II.

  • Permutations7:46

    Generate all possible permutations of a distinct integer array using backtracking. Use a visited set to build each full-length permutation, since order matters and complexity is n factorial.

  • Permutations II5:15

    Sort the input to bypass duplicates, and use backtracking with a visited array to generate all unique permutations in any order.

  • Combinations8:07

    Discover how to generate all k-element combinations from 1 to n using backtracking, with a recursive helper, an increasing start index, and the n choose k time complexity.

  • Combination Sum8:19

    Solve the combination sum problem, use backtracking and recursion to find all unique combinations summing to the target from distinct candidates, allowing unlimited repeats and sorting to avoid duplicates.

  • Combination Sum II8:57

    Explains the combination sum two problem: use each candidate at most once to form unique combinations that sum to target, employing sorting and backtracking to avoid duplicates.

  • Combination Sum III5:52

    Identify all valid combinations of k numbers from 1 to 9 that sum to n, using backtracking, with no duplicates and each number used at most once.

  • Word Search10:18

    apply backtracking to solve word search on an m by n grid, using depth-first search with 4-direction moves, no revisits, and backtracking restoration.

  • Palindrome Partitioning9:01

    Learn palindrome partitioning by partitioning a string into palindromic substrings, returning all possible partitions via recursion and backtracking with start indices and palindrome checks.

  • Generate Parentheses13:00

    Generate parentheses using backtracking and recursion to produce all well-formed strings for n pairs, tracking left and right counts and pruning invalid paths.

  • Sudoku Solver4:37

    Solve a sudoku puzzle using backtracking and recursion by placing one to nine in empty cells, validating rows, columns, and 3x3 submatrices, and backtracking to complete the board.

Requirements

  • A basic understanding of essential data structures and algorithms is desirable.

Description

This course is part of series of courses teaching you how to ace any coding interview at big tech companies. This course we will be focusing on backtracking and recursive problems.

If you visit the Leetcode page now you will see that there are almost 3000 questions. No matter if you have 3 weeks or 3 or 6 months to prepare, solving 3000 questions seems impossible.

Quality over quantity! I solved hundreds of them while preparing for big tech interviews and I can say with confidence after certain number of questions we have diminishing returns. A good base of questions with patterns clearly explained is all you really need. As of now there are many lists online Blind 75, Prashad's leetcode patterns, curated list of problems from Elements of Programming.

I aggregated all problems from those lists and tips/tricks from the books in one free platform. Solving problems on this platform will make you prepared for any coding interview at most of the big tech companies. For each problem, we have description, written explanation with time/space complexity. All problems are solved using 4 different programming languages C++, Java, JavaScript and Python. For each problem we created a deep dive video going into details on how to solve the problem. As of this moment we have 17 categories with 200+ solved problems.


The platform is meant to be used following 4 simple steps:

  1. Start with any of the categories, and go from easy to hard level problems (sorted order)

  2. Read the problem, see if you can do it on your own, read the explanations and watch the video

  3. Try related problems and continue solving the problem in the selected category

  4. Retention phase, after 3 weeks randomly select a problem from the category you have already completed, solved the problem in your head. Basically just go through the pattern you would use, read the explanation of the solution

Who this course is for:

  • Those aiming to excel in technical coding interviews with companies such as Google, Facebook, Microsoft, Amazon, and more.