Find Pair

ullas kunder

Designer & Developer

🧠 Find a Pair with a Given Sum

✅ Simple Statement

Given an array of integers and a target value, check if there's a pair of elements in the array whose sum equals the target.

🧩 Example

Input: nums = [8, 7, 2, 5, 3, 1], target = 10
Output: True (Because 7 + 3 = 10)

🧾 Pseudocode (Optimal – Using Hash Map)

create empty map
for each number in array:
    if (target - current number) exists in map:
        return true
    add current number to map
return false

🧪 Stack Trace (Optimal Method)

Input: [8, 7, 2, 5, 3, 1], target = 10

StepIndexValueMaptarget - valueFound?
108{}2
217{8}3
322{8, 7}8

🐍 Python Code

Brute-force (O(n²))

def find_pair_brute(nums, target):
    for i in range(len(nums)):
        for j in range(i+1, len(nums)):
            if nums[i] + nums[j] == target:
                return True
    return False

Optimal (O(n))

def find_pair_optimal(nums, target):
    seen = {}
    for i, num in enumerate(nums):
        if target - num in seen:
            return True
        seen[num] = i
    return False

📜 JavaScript Code

Brute-force

function findPairBrute(nums, target) {
  for (let i = 0; i < nums.length; i++) {
    for (let j = i + 1; j < nums.length; j++) {
      if (nums[i] + nums[j] === target) return true;
    }
  }
  return false;
}

Optimal

function findPairOptimal(nums, target) {
  const seen = new Map();
  for (let i = 0; i < nums.length; i++) {
    if (seen.has(target - nums[i])) return true;
    seen.set(nums[i], i);
  }
  return false;
}

← Previous

check subarray zero

Next →

print all zero sum subarray