Featured Post

Top Questions People Ask About Pandas, NumPy, Matplotlib & Scikit-learn — Answered!

Image
 Whether you're a beginner or brushing up on your skills, these are the real-world questions Python learners ask most about key libraries in data science. Let’s dive in! 🐍 🐼 Pandas: Data Manipulation Made Easy 1. How do I handle missing data in a DataFrame? df.fillna( 0 ) # Replace NaNs with 0 df.dropna() # Remove rows with NaNs df.isna(). sum () # Count missing values per column 2. How can I merge or join two DataFrames? pd.merge(df1, df2, on= 'id' , how= 'inner' ) # inner, left, right, outer 3. What is the difference between loc[] and iloc[] ? loc[] uses labels (e.g., column names) iloc[] uses integer positions df.loc[ 0 , 'name' ] # label-based df.iloc[ 0 , 1 ] # index-based 4. How do I group data and perform aggregation? df.groupby( 'category' )[ 'sales' ]. sum () 5. How can I convert a column to datetime format? df[ 'date' ] = pd.to_datetime(df[ 'date' ]) ...

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)