Method 3:Using a lambda function and the min() function

Step-by-step algorithm:

  1. Initialize the list of tuples, the target tuple and the index K.
  2. Use the min() function and a lambda function to find the tuple in the list with the smallest absolute difference between its Kth element and the Kth element of the target tuple.
  3. Assign the result of the min() function to a variable named “res”.
  4. Print the value of “res” as the nearest tuple to the Kth index element of the target tuple.
Python
# initializing list
test_list = [(3, 4), (78, 76), (2, 3), (9, 8), (19, 23)]

# initializing tuple
tup = (17, 23)

# initializing K
K = 1

# Using a lambda function and the min() function
res = min(test_list, key=lambda x: abs(x[K-1] - tup[K-1]))

# printing result
print("The nearest tuple to Kth index element is : " + str(res))

Output
The nearest tuple to Kth index element is : (19, 23)

Time complexity: O(n), where n is the length of the list of tuples. This is because the min() function iterates over the list once to find the tuple with the smallest absolute difference between its Kth element and the Kth element of the target tuple.

Auxiliary space: O(1), since we only store a constant amount of data, such as the list of tuples, the target tuple, the index K, and the result tuple.

Python – Closest Pair to Kth index element in Tuple

In the given problem, condition K specifies the maximum allowable difference between corresponding elements of tuples, i.e., it represents the proximity threshold for finding the nearest tuple. The goal is to find the tuple in the list whose elements have the smallest maximum difference compared to the given tuple tup, and this difference should not exceed KKK.

Input : test_list = [(3, 4), (78, 76), (2, 3), (9, 8), (19, 23)] tup = (17, 23) K = 2 
Output : (19, 23) 

Input : test_list = [(3, 4, 9), (5, 6, 7)] tup = (1, 2, 5) K = 3 
Output : (5, 6, 7)

Similar Reads

Method 1: Using enumerate() + loop

The combination of above functions offer brute force way to solve this problem. In this, we use enumerate() to monitor index and abs() to keep the minimum difference updated checked for each element over a loop....

Method 2: Using min() + lambda

The combination of above functions offer shorthand to solve this problem. In this, we use min() to find minimum element difference and lambda function is used to perform iterations and computations....

Method 3:Using a lambda function and the min() function

Step-by-step algorithm:...

Method 4:Using the heapq.nsmallest() function:

Algorithm:...

Method 5 : using the sorted() function with a custom key.

step-by-step approach :...

Method 6: Using a List Comprehension and min

This code snippet calculates the tuple from test_list that is closest to the target_tuple based on the Euclidean distance. It creates a list of tuples containing each original tuple and its distance to the target, finds the one with the minimum distance using a key in the min function, and prints that tuple as the output....

Contact Us