Featured Post

Python: Built-in Functions vs. For & If Loops – 5 Programs Explained

Image
Python’s built-in functions make coding fast and efficient. But understanding how they work under the hood is crucial to mastering Python. This post shows five Python tasks, each implemented in two ways: Using built-in functions Using for loops and if statements ✅ 1. Sum of a List ✅ Using Built-in Function: numbers = [ 10 , 20 , 30 , 40 ] total = sum (numbers) print ( "Sum:" , total) 🔁 Using For Loop: numbers = [ 10 , 20 , 30 , 40 ] total = 0 for num in numbers: total += num print ( "Sum:" , total) ✅ 2. Find Maximum Value ✅ Using Built-in Function: values = [ 3 , 18 , 7 , 24 , 11 ] maximum = max (values) print ( "Max:" , maximum) 🔁 Using For and If: values = [ 3 , 18 , 7 , 24 , 11 ] maximum = values[ 0 ] for val in values: if val > maximum: maximum = val print ( "Max:" , maximum) ✅ 3. Count Vowels in a String ✅ Using Built-ins: text = "hello world" vowel_count = sum ( 1 for ch in text if ch i...

Python Logic to Find All Unique Pairs in an Array

 Here's the Python logic for finding all unique pairs in an array that sum up to a target value.

Unique pairs in an array


Python Unique Pair

Problem


Write a Python function that finds all unique pairs in an array whose sum equals a target value. Avoid duplicates in the result. For example:

  • Input: arr = [2, 4, 3, 5, 7, 8, 9], target = 9
  • Output: [(2, 7), (4, 5)]

Hints

  • Use a set for tracking seen numbers.
  • Check for complements efficiently.

Example

def find_unique_pairs(arr, target):

    """

    Finds all unique pairs in the array that sum up to the target value.


    Parameters:

    arr (list): The input array of integers.

    target (int): The target sum value.


    Returns:

    list: A list of unique pairs that sum to the target value.

    """

    seen = set()

    pairs = set()


    for num in arr:

        complement = target - num

        if complement in seen:

            # Add the pair in sorted order to avoid duplicates

            pairs.add(tuple(sorted((num, complement))))

        seen.add(num)

    

    return list(pairs)


# Example usage

input_array = [2, 4, 3, 5, 7, 8, 9]

target_sum = 9

result = find_unique_pairs(input_array, target_sum)

print("Input Array:", input_array)

print("Target Sum:", target_sum)

print("Unique Pairs:", result)


Output:

For the input array [2, 4, 3, 5, 7, 8, 9] and target 9, the output will be:


Input Array: [2, 4, 3, 5, 7, 8, 9] Target Sum: 9 Unique Pairs: [(4, 5), (2, 7)]

Explanation:

  1. Tracking Seen Elements (seen Set):

    • Store numbers already processed in a set.
    • This helps in quickly checking if the complement (i.e., target - num) exists.
  2. Avoiding Duplicate Pairs (pairs Set):

    • Pairs are stored in a set to automatically handle duplicate pairs.
    • Each pair is added as a sorted tuple to maintain consistency (e.g., (2, 7) and (7, 2) are treated as the same).
  3. Conversion to List:

    • The result is converted to a list for output.


Comments

Popular posts from this blog

SQL Query: 3 Methods for Calculating Cumulative SUM

5 SQL Queries That Popularly Used in Data Analysis

Big Data: Top Cloud Computing Interview Questions (1 of 4)