Given three arrays sorted in non-decreasing order, print all common elements in these arrays.
Input: ar1 = [1, 5, 10, 20, 40, 80] ar2 = [6, 7, 20, 80, 100] ar3 = [3, 4, 15, 20, 30, 70, 80, 120] Output: [80, 20] Input: ar1 = [1, 5, 5] ar2 = [3, 4, 5, 5, 10] ar3 = [5, 5, 10, 20] Output: [5, 5]
We have existing solution for this problem please refer Find common elements in three sorted arrays link. We can solve this problem quickly in python using intersection of dictionaries. Approach is simple,
- First convert all three lists into dictionaries having elements as keys and their frequencies as value, using Counter() method.
- Now perform intersection operation for three dictionaries, this will result us dictionary having common elements among three array list with their frequencies.
- intersection_update() in Python to find common elements in n arrays
- Python | Dictionary initialization with common dictionary
- Python counter and dictionary intersection example (Make a string using deletion and rearrangement)
- Python | Find common elements in list of lists
- Python program to find common elements in three lists using sets
- Python | Initialize dictionary with common value
- Python - Common items Dictionary Value List
- Intersection of two arrays in Python ( Lambda expression and filter function )
- Python | Combine two dictionary adding values for common keys
- Python | Get items in sorted order from given dictionary
- Python - Sorted Nested Keys in Dictionary
- heapq in Python to print all elements in sorted order from row and column wise sorted matrix
- Python - Sorted order Dictionary items pairing
- Merge two sorted arrays in Python using heapq
- Python | Common Row elements Summation
- Python - Pair lists elements to Dictionary
- Python - Storing Elements Greater than K as Dictionary
- Python - Filter odd elements from value lists in dictionary
- Python - Test Common Elements Order
- Python | Print all the common elements of two lists
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.