Coding interviews can be tough. Whiteboard freeze, tricky algorithms, data structure trivia...The best way to prepare is to practice. So we've assembled some of the most common C# coding interview questions.
You'll get a step-by-step walkthrough for each question. If you get stuck, we won't leave you hanging. We'll give you just enough of a hint to get back on track. And along the way, you'll learn the underlying patterns behind solving these tricky algorithmic coding interview questions.
Computer the nth Fibonacci number. Careful--the recursion can quickly spin out of control! keep reading »
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 »
Write a function that will replace your role as a cashier and make everyone rich or something. keep reading »
Implement a queue with two stacks. Assume you already have a stack implementation. keep reading »
Find the area of overlap between two rectangles. In the name of love. keep reading »
Write code to continually track the max, min, mean, and mode as new numbers are inserted into a tracker class. keep reading »
Write a function to see if a binary tree is 'superbalanced'--a new tree property we just made up. keep reading »
Write a function to check that a binary tree is a valid binary search tree. keep reading »
Find the second largest element in a binary search tree. keep reading »
I'm making a new search engine called MillionGazillion(tm), and I need help figuring out what data structures to use. keep reading »
Given an array of numbers in sorted order, how quickly could we check if a given number is present in the array? keep reading »
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 »
Writing a simple recommendation algorithm that helps people choose which movies to watch during flights keep reading »
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 »
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 »
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 »
Write a function to delete a node from a linked list. Turns out you can do it in constant time! keep reading »
Write a function to reverse a linked list in place. keep reading »
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 »
Write a function to reverse a string in place. keep reading »
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 »
Write a function that finds the corresponding closing parenthesis given the position of an opening parenthesis in a string. keep reading »
Write a super-simple JavaScript parser that can find bugs in your intern's code. keep reading »
Check if any permutation of an input string is a palindrome. keep reading »
Write a recursive function of generating all permutations of an input string. keep reading »
Efficiently sort numbers in an array, where each number is below a certain maximum. keep reading »
Find the repeat number in an array of numbers. Optimize for runtime. keep reading »
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 »
Do an in-place shuffle on an array of numbers. It's trickier than you might think! keep reading »
Write a function to tell us if cafe customer orders are served in the same order they're paid for. keep reading »
Given a 7-sided die, make a 5-sided die. keep reading »
Given a 5-sided die, make a 7-sided die. keep reading »
A building has 100 floors. Figure out the highest floor an egg can be dropped from without breaking. keep reading »
Figure out which number is repeated. But here's the catch: optimize for space. keep reading »
Figure out which number is repeated. But here's the catch: do it in linear time and constant space! keep reading »
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 »
Figure out the optimal buy and sell time for a given stock, given its prices yesterday. keep reading »
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 »
Find the highest possible product that you can get by multiplying any 3 numbers from an input array. keep reading »
Write a function for merging meeting times given everyone's schedules. It's an enterprise end-to-end scheduling solution, dog. keep reading »
Design a ticket sales site, like Ticketmaster keep reading »