Program to find the closest pair to K-th index element of the given tuple using Python

by | Jul 3, 2021 | Python Programs

Home » Python » Python Programs » Program to find the closest pair to K-th index element of the given tuple using Python

Introduction

The task is find the closest pair to the Kth index element of the tuple in the given list.

Program to find the closest pair to K-th index element of the given tuple

Program

Approach 1

ip_list = [(1, 2), (8,12), (10, 22), (3, 5), (7, 10)]

# Initializing tuple and K

ip_tuple = (1,6)

K = 2

# Using enumerate() + loop

min_d, output = 999999999, None

for index, ele in enumerate(ip_list):

    d = abs(ip_tuple[K - 1] - ele[K - 1])

    if d < min_d:

        min_d, output = d, index

print("The nearest tuple is : " + str(ip_list[output]))

Output:

Program to find the closest pair to K-th index element of the given tuple Output 1

Approach 2

ip_list = [(1, 2), (8,12), (10, 22), (3, 5), (7, 10)]

# Initializing tuple and K

ip_tuple = (1,6)

K = 2

# Using min() + lambda

output = min(range(len(ip_list)), key = lambda sub: abs(ip_list[sub][K - 1] - ip_tuple[K - 1]))   

print("The nearest tuple is : " + str(ip_list[output]))

Output:

Program to find the closest pair to K-th index element of the given tuple Output 2

Explanation

In approach 1, we have used enumerate() function with abs() function. The enumerate() function keeps the track of index value whereas, the abs() functions updates the minimum difference for each element traversed over the loop. The elements at minimum difference index is printed on the screen.

In approach 2, we have used lambda and min() function. The min() function finds the minimum length difference of the elements and lambda is for iterations of list elements.

Author

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Author