SoFi Interview Questions — 18 DSA Problems
17 problems with full solutions in Python, Java, C++, JavaScript, Go, Rust.
Most frequently asked SoFi LeetCode questions for software engineering interviews.
- Minimum Number of Steps to Make Two Strings Anagram (MEDIUM) — Hash Table, String, Counting
- Minimum Window Substring (HARD) — Hash Table, String, Sliding Window
- Asteroid Collision (MEDIUM) — Array, Stack, Simulation
- Longest Mountain in Array (MEDIUM) — Array, Two Pointers, Dynamic Programming, Enumeration
- Number of Islands (MEDIUM) — Array, Depth-First Search, Breadth-First Search, Union Find, Matrix
- Insert Delete GetRandom O(1) (MEDIUM) — Array, Hash Table, Math, Design, Randomized
- Roman to Integer (EASY) — Hash Table, Math, String
- Maximum Number of Non-overlapping Palindrome Substrings (HARD) — Two Pointers, String, Dynamic Programming, Greedy
- Merge k Sorted Lists (HARD) — Linked List, Divide and Conquer, Heap (Priority Queue), Merge Sort
- Two Sum (EASY) — Array, Hash Table
- Degree of an Array (EASY) — Array, Hash Table
- Meeting Rooms II (MEDIUM) — Array, Two Pointers, Greedy, Sorting, Heap (Priority Queue), Prefix Sum
- LRU Cache (MEDIUM) — Hash Table, Linked List, Design, Doubly-Linked List
- Flatten a Multilevel Doubly Linked List (MEDIUM) — Linked List, Depth-First Search, Doubly-Linked List
- Palindromic Substrings (MEDIUM) — Two Pointers, String, Dynamic Programming
- Subarray Product Less Than K (MEDIUM) — Array, Binary Search, Sliding Window, Prefix Sum
- Find the Winner of the Circular Game (MEDIUM) — Array, Math, Recursion, Queue, Simulation
- Top K Frequent Elements (MEDIUM) — Array, Hash Table, Divide and Conquer, Sorting, Heap (Priority Queue), Bucket Sort, Counting, Quickselect
S
SoFi
18 questions tracked17 with solutions
Frequency scoreSorted highest → lowest frequency✓ Our Solution = we have a detailed walkthrough
Showing 18 of 18 questions
1MediumMinimum Number of Steps to Make Two Strings Anagram✓ Our Solution Hash TableStringCounting
2Hash TableStringSliding Window
4ArrayTwo PointersDynamic ProgrammingEnumeration
5ArrayDepth-First SearchBreadth-First SearchUnion Find+1
6ArrayHash TableMathDesign+1
8HardMaximum Number of Non-overlapping Palindrome Substrings✓ Our Solution Two PointersStringDynamic ProgrammingGreedy
9Linked ListDivide and ConquerHeap (Priority Queue)Merge Sort
12MediumMeeting Rooms II
ArrayTwo PointersGreedySorting+2
13Hash TableLinked ListDesignDoubly-Linked List
14Linked ListDepth-First SearchDoubly-Linked List
15Two PointersStringDynamic Programming
16ArrayBinary SearchSliding WindowPrefix Sum
17ArrayMathRecursionQueue+1
18ArrayHash TableDivide and ConquerSorting+4