Algorithms & Data Structures
Array Problems
Array Interview Questions
Section titled “Array Interview Questions”Master these fundamental array problems that appear frequently in interviews.
1. Two Sum
Section titled “1. Two Sum”Given an array of integers and a target, return indices of two numbers that add up to target.
def two_sum(nums, target): seen = {} for i, num in enumerate(nums): complement = target - num if complement in seen: return [seen[complement], i] seen[num] = i return []
# Examplenums = [2, 7, 11, 15]target = 9print(two_sum(nums, target)) # [0, 1]Time Complexity: O(n)
Space Complexity: O(n)
2. Maximum Subarray (Kadane’s Algorithm)
Section titled “2. Maximum Subarray (Kadane’s Algorithm)”Find the contiguous subarray with the largest sum.
def max_subarray(nums): max_sum = current_sum = nums[0] for num in nums[1:]: current_sum = max(num, current_sum + num) max_sum = max(max_sum, current_sum) return max_sum
# Examplenums = [-2, 1, -3, 4, -1, 2, 1, -5, 4]print(max_subarray(nums)) # 6 (subarray [4, -1, 2, 1])Time Complexity: O(n)
Space Complexity: O(1)
3. Contains Duplicate
Section titled “3. Contains Duplicate”Check if any value appears at least twice in the array.
def contains_duplicate(nums): return len(nums) != len(set(nums))