Level: Unknown Level
Round: Full Journey · Type: Coding · Difficulty: 5/10 · Duration: 60 min · Interviewer: Neutral
Topics: Data Structures, Arrays, Algorithms, Strings, HashMaps, Graphs, BFS, DFS, Linked Lists, Matrix Manipulation, Sorting, Heaps, Sliding Window, Topological Sort, Cycle Detection, Priority Queue
Location: San Francisco Bay Area
Interview date: 2026-01-15
I reviewed a collection of Apple Software Engineer interview questions from Reddit and LeetCode Discuss. Apple coding interviews typically focus on LeetCode Easy to Medium level problems, with a strong emphasis on code...
I reviewed common questions for Apple Software Engineer interviews:
Data Structure Design
get(key) and put(key, value) in O(1) time complexity.insert(val), remove(val), and getRandom() with an average O(1) time complexity.insert(word), search(word), and startsWith(prefix).Arrays / High-Frequency Algorithms
nums = [1,1,1,2,2,3] and k = 2, return [1,2].[1,2,3,4], return [24,12,8,6] without using division in O(n) time.height = [0,1,0,2,1,0,1,3,2,1,2,1], calculate how much water can be stored.Strings / HashMap
abcabcbb → 3["eat","tea","tan","ate","nat","bat"][["eat","tea","ate"],["tan","nat"],["bat"]]3[a2[c]]accaccaccGraphs / BFS / DFS
Linked Lists
Matrix
Advanced Array
[2,1,4,7,3,2,5]1,4,7,3,2 with length = 5.LeetCode similar: LeetCode 128, LeetCode 380, LeetCode 295, LeetCode 239, LeetCode 49, LeetCode 200, LeetCode 210, LeetCode 23, LeetCode 48, LeetCode 845