Open In App

intersection_update() in Python to find common elements in n arrays

Improve
Improve
Like Article
Like
Save
Share
Report

We are given list of n number of arrays, find all common elements in given arrays ? Examples:

Input :  arr = [[1,2,3,4],
               [8,7,3,2],
               [9,2,6,3],
               [5,1,2,3]]
Output :  Common Elements = [2,3]

We can solve this problem quickly in python using intersection_update() method of Set() data structure. How intersection_update() works ?

Suppose we have two sets A and B, then A.intersection_update(B) operation updates set A with common elements in set A and B. For example, A=set([1,2,3]) and B=set([4,2,3]) now after taking A.intersection_update(B), value of set A will be [2,3]. Syntax is anySet.intersection_update(iterable).

Implementation:

Python3




# Function to find common elements in n arrays
def commonElements(arr):
     
    # initialize result with first array as a set
    result = set(arr[0])
 
    # now iterate through list of arrays starting from
    # second array and take intersection_update() of
    # each array with result. Every operation will
    # update value of result with common values in
    # result set and intersected set
    for currSet in arr[1:]:
        result.intersection_update(currSet)
 
    return list(result)
 
# Driver code
if __name__ == "__main__":
    arr = [[1,2,3,4], [8,7,3,2], [9,2,6,3], [5,1,2,3]]
    output = commonElements(arr)
    if len(output) > 0:
        print ("Common Element = ",output)
    else:
        print ('No Common Elements Found')


Output

Common Element =  [2, 3]

Last Updated : 21 Jul, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads