The bottom line is this: if you haven't practiced for your Swift coding interview, you're going to be caught off guard somehow. It's inevitable.
And by far the most common way folks get caught off guard in Swift programming interviews is by getting hit with data structures and algorithms questions. Queues, stacks, tries, trees, binary search, binary trees, etc.
So we've assembled some of the most common Swift coding interview questions, many of which touch on data structures and algorithms. Don't worry—we'll never leave you behind. When you get stuck on a problem, just press the button to get a hint.
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 »
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 »
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 »
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 »
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 »
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 »
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 »
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 »
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 »
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 »
Design a ticket sales site, like Ticketmaster keep reading »