Browse our full set of technical interview questions for software engineering jobs. They touch on a mix of algorithms, coding, and big-o notation.

### Not quite ready to buy? Enroll in the free email course!

The questions below are reserved for paying users, but we drive home the same lessons in this free 7-day email course. Learn the right *way of thinking* for breaking down tricky algorithmic coding interview questions.

No CS degree necessary.

**
You're in!
**

**Apple Stocks »**

Figure out the optimal buy and sell time for a given stock, given its prices yesterday. keep reading »

**Product of All Other Numbers »**

For each number in an array, find the product of all the other numbers. You can do it faster than you'd think! keep reading »

**Highest Product of 3 »**

Find the highest possible product that you can get by multiplying any 3 numbers from an input array. keep reading »

**Merging Meeting Times »**

Write a function for merging meeting times given everyone's schedules. It's an enterprise end-to-end scheduling solution, dog. keep reading »

**Making Change »**

Write a function that will replace your role as a cashier and make everyone rich or something. keep reading »

**Rectangular Love »**

Find the area of overlap between two rectangles. In the name of love. keep reading »

**Temperature Tracker »**

Write code to continually track the max, min, mean, and mode as new numbers are inserted into a tracker class. keep reading »

**Balanced Binary Tree »**

Write a function to see if a binary tree is 'superbalanced'--a new tree property we just made up. keep reading »

**Binary Search Tree Checker »**

Write a function to check that a binary tree is a valid binary search tree. keep reading »

**2nd Largest Item in a Binary Search Tree »**

Find the second largest element in a binary search tree. keep reading »

**MillionGazillion »**

I'm making a new search engine called MillionGazillion(tm), and I need help figuring out what data structures to use. keep reading »

**Find in Ordered Set »**

Given an array of numbers in sorted order, how quickly could we check if a given number is present in the array? keep reading »

**Find Rotation Point »**

I wanted to learn some big words to make people think I'm smart, but I messed up. Write a function to help untangle the mess I made. keep reading »

**Inflight Entertainment »**

Writing a simple recommendation algorithm that helps people choose which movies to watch during flights keep reading »

**Compute nth Fibonacci Number »**

Computer the nth Fibonacci number. Careful--the recursion can quickly spin out of control! keep reading »

**The Cake Thief »**

You've hit the mother lode: the cake vault of the Queen of England. Figure out how much of each cake to carry out to maximize profit. keep reading »

**JavaScript Scope »**

There's something tricky going on with scope in this JavaScript. Can you guess what will get logged to the console? keep reading »

**What's Wrong with This JavaScript? »**

There's a tricky bug in this JavaScript. Can you find it? keep reading »

**Implement A Queue With Two Stacks »**

Implement a queue with two stacks. Assume you already have a stack implementation. keep reading »

**Largest Stack »**

You've implemented a Stack class, but you want to access the largest element in your stack from time to time. Write an augmented LargestStack class. keep reading »

**The Stolen Breakfast Drone »**

In a beautiful Amazon utopia where breakfast is delivered by drones, one drone has gone missing. Write a function to figure out which one is missing. keep reading »

**Delete Node »**

Write a function to delete a node from a linked list. Turns out you can do it in constant time! keep reading »

**Does This Linked List Have A Cycle? »**

Check to see if a linked list has a cycle. We'll start with a simple solution and move on to some pretty tricky ones. keep reading »

**Reverse A Linked List »**

Write a function to reverse a linked list in place. keep reading »

**Kth to Last Node in a Singly-Linked List »**

Find the kth to last node in a singly-linked list. We'll start with a simple solution and move on to some clever tricks. keep reading »

**Reverse String in Place »**

Write a function to reverse a string in place. keep reading »

**Reverse Words »**

Write a function to reverse the word order of a string, in place. It's to decipher a supersecret message and head off a heist. keep reading »

**Parenthesis Matching »**

Write a function that finds the corresponding closing parenthesis given the position of an opening parenthesis in a string. keep reading »

**Bracket Validator »**

Write a super-simple JavaScript parser that can find bugs in your intern's code. keep reading »

**Permutation Palindrome »**

Check if any permutation of an input string is a palindrome. keep reading »

**Recursive String Permutations »**

Write a recursive function of generating all permutations of an input string. keep reading »

**Top Scores »**

Efficiently sort numbers in an array, where each number is below a certain maximum. keep reading »

**Which Appears Twice »**

Find the repeat number in an array of numbers. Optimize for runtime. keep reading »

**Word Cloud Data »**

You're building a word cloud. Write a function to figure out how many times each word appears so we know how big to make each word in the cloud. keep reading »

**In-Place Shuffle »**

Do an in-place shuffle on an array of numbers. It's trickier than you might think! keep reading »

**Single Riffle Shuffle »**

Write a function to tell us if a deck of cards is a single riffle of two other halves. keep reading »

**Simulate 5-sided die »**

Given a 7-sided die, make a 5-sided die. keep reading »

**Simulate 7-sided die »**

Given a 5-sided die, make a 7-sided die. keep reading »

**Two Egg Problem »**

A building has 100 floors. Figure out the highest floor an egg can be dropped from without breaking. keep reading »

**Find Repeat, Space Edition »**

Figure out which number is repeated. But here's the catch: optimize for space. keep reading »

**Find Repeat, Space Edition BEAST MODE »**

Figure out which number is repeated. But here's the catch: do it in linear time and constant space! keep reading »

**Find Duplicate Files »**

Your friend copied a bunch of your files and put them in random places around your hard drive. Write a function to undo the damage. keep reading »

**Merge Sorted Arrays »**

Write a function for consolidating cookie orders and taking over the world. keep reading »

**URL Shortener »**

Design a URL shortener, like bit.ly keep reading »

**Graph Coloring »**

Color the nodes in a graph so adjacent nodes always have different colors. keep reading »

**MeshMessage »**

You wrote a trendy new messaging app, MeshMessage, to get around flaky cell phone coverage. But messages are taking too long to send... keep reading »

**I can't believe how this problem set covered such a wide variety of algorithmic approaches in detail.**It transformed the way I think about interviews and gave me immense confidence.