1. Two Sum
easyAsked at Byju'sGiven an array of integers, return indices of two numbers adding to a target.
By Sam K., Founder, InterviewChamp.AI · Last verified
Problem
Given an array of integers nums and an integer target, return the indices of the two numbers such that they add up to target. You may assume that each input has exactly one solution, and you may not use the same element twice.
Constraints
2 <= nums.length <= 10^4-10^9 <= nums[i], target <= 10^9Exactly one valid answer exists
Examples
Example 1
Input
nums = [2,7,11,15], target = 9Output
[0,1]Example 2
Input
nums = [3,2,4], target = 6Output
[1,2]Approaches
1. Brute force
Check every pair of indices.
- Time
- O(n^2)
- Space
- O(1)
for (let i=0;i<nums.length;i++)
for (let j=i+1;j<nums.length;j++)
if (nums[i]+nums[j]===target) return [i,j];Tradeoff:
2. Hash map one-pass
Track complements in a hash map for O(1) lookup. Single linear scan resolves each pair on encounter.
- Time
- O(n)
- Space
- O(n)
function twoSum(nums, target) {
const seen = new Map();
for (let i = 0; i < nums.length; i++) {
const need = target - nums[i];
if (seen.has(need)) return [seen.get(need), i];
seen.set(nums[i], i);
}
return [];
}Tradeoff:
Byju's-specific tips
Byju's interviewers expect you to verbalize the brute-force baseline before optimizing, since they grade strongly on clear teaching-style explanation.
Solve it now
Free. No sign-up. Python and JavaScript run instantly in your browser.