Python Program to Find the sum of all Highest Occurring Elements in an Array/List

In the previous article, we have discussed Python Program to Find the Sum of all Odd Frequency Elements in an Array/List

Given a list, the task is to find the sum of the maximum frequency elements of a given list.

Examples:

Example1:

Input:

Given List = [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1]

Output:

The sum of elements in the given list [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1] which are having maximum frequency are :
11

Example2:

Input:

Given List = [10, 20, 30, 40, 20, 25]

Output:

The sum of elements in the given list [10, 20, 30, 40, 20, 25] which are having maximum frequency are :
20

Program to Find the sum of all Highest Occurring Elements in an Array/List in Python

Below are the ways to find the sum of the maximum frequency elements of a given list in python:

Method #1: Using Dictionary (Hashing, Static Input)

Approach:

  • Take a dictionary and initialize it to empty using the {} or dict() say freqncyDictionary.
  • Give the list as static input and store it in a variable.
  • Loop in the given list using the For loop.
  • Inside the For loop, Check if the list element is present in the dictionary or not using the if conditional statement and ‘in‘ keyword.
  • If it is true then increment the count of the list element in the dictionary by 1.
  • Else initialize the dictionary with the list element as key and value as 1.
  • Take a variable that stores the sum of all the most occurring elements in the given list and initialize its value to 0.
  • Find the maximum frequency in the freqncyDictionary
  • We can find it by converting freqncyDictionary values to list(using list and values() functions) and using max() function.
  • Loop in the freqncyDictionary using the For loop.
  • Check if any element value having a frequency equal to max frequency using the if conditional statement.
  • If it is true then increment the count by the key(list element).
  • The Exit of the program.

Below is the implementation:

# Take a dictionary and initialize it to empty
# using the {} or dict() say freqncyDictionary.
freqncyDictionary = {}
# Give the list as static input and store it in a variable.
gvnlst = [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1]
# Loop in the given list using the For loop.
for i in gvnlst:
        # Inside the For loop,
    # Check if the list element is present in the dictionary
    # or not using the if conditional statement and 'in' keyword.
    if i in freqncyDictionary.keys():
                # If it is true then increment the count of the list element
        # in the dictionary by 1.
        freqncyDictionary[i] = freqncyDictionary[i]+1
    # Else initialize the dictionary with the list element as key and value as 1.
    else:
        freqncyDictionary[i] = 1
# Take a variable which stores sum of all the most occuring elements in the given list
# and initialize its value to 0
summaxfreqelemnts = 0
# find the maximum frequency in the freqncyDictionary
# We can find it by converting freqncyDictionary values to list(using list and values() functions)
# and using max() function
maxfrqncy = max(freqncyDictionary.values())
print('The sum of elements in the given list', gvnlst,
      'which are having maximum frequency are :')
# loop in the freqncyDictionary using the For loop
for key in freqncyDictionary:
    # check if any element value having frequency equal to max frequency using the if conditional statement.
    if(freqncyDictionary[key] == maxfrqncy):
        # if it is true then increment the count by the key(list element)
        summaxfreqelemnts = summaxfreqelemnts+key
print(summaxfreqelemnts)

Output:

The sum of elements in the given list [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1] which are having maximum frequency are :
11

Method #2: Using Dictionary (Hashing, User Input)

Approach:

  • Take a dictionary and initialize it to empty using the {} or dict() say freqncyDictionary.
  • Give the list as user input using the list(),map(),split(),int functions and store it in a variable.
  • Loop in the given list using the For loop.
  • Inside the For loop, Check if the list element is present in the dictionary or not using the if conditional statement and ‘in‘ keyword.
  • If it is true then increment the count of the list element in the dictionary by 1.
  • Else initialize the dictionary with the list element as key and value as 1.
  • Take a variable that stores the sum of all the most occurring elements in the given list and initialize its value to 0.
  • Find the maximum frequency in the freqncyDictionary
  • We can find it by converting freqncyDictionary values to list(using list and values() functions) and using max() function.
  • Loop in the freqncyDictionary using the For loop.
  • Check if any element value having a frequency equal to max frequency using the if conditional statement.
  • If it is true then increment the count by the key(list element).
  • The Exit of the program.

Below is the implementation:

# Take a dictionary and initialize it to empty
# using the {} or dict() say freqncyDictionary.
freqncyDictionary = {}
# Give the list as user input using the list(),map(),split(),int functions and 
# store it in a variable.
gvnlst = list( map(int, input('Enter some random list element separated by spaces = ').split()))
# Loop in the given list using the For loop.
for i in gvnlst:
        # Inside the For loop,
    # Check if the list element is present in the dictionary
    # or not using the if conditional statement and 'in' keyword.
    if i in freqncyDictionary.keys():
                # If it is true then increment the count of the list element
        # in the dictionary by 1.
        freqncyDictionary[i] = freqncyDictionary[i]+1
    # Else initialize the dictionary with the list element as key and value as 1.
    else:
        freqncyDictionary[i] = 1
# Take a variable which stores sum of all the most occuring elements in the given list
# and initialize its value to 0
summaxfreqelemnts = 0
# find the maximum frequency in the freqncyDictionary
# We can find it by converting freqncyDictionary values to list(using list and values() functions)
# and using max() function
maxfrqncy = max(freqncyDictionary.values())
print('The sum of elements in the given list', gvnlst,
      'which are having maximum frequency are :')
# loop in the freqncyDictionary using the For loop
for key in freqncyDictionary:
    # check if any element value having frequency equal to max frequency using the if conditional statement.
    if(freqncyDictionary[key] == maxfrqncy):
        # if it is true then increment the count by the key(list element)
        summaxfreqelemnts = summaxfreqelemnts+key
print(summaxfreqelemnts)

Output:

Enter some random list element separated by spaces = 1 2 3 4 1 2 6 84 6
The sum of elements in the given list [1, 2, 3, 4, 1, 2, 6, 84, 6] which are having maximum frequency are :
9

Method #3: Using Counter() function (Hashing, Static Input)

Approach:

  • Import the Counter() function from collections using the import keyword.
  • Give the list as static input and store it in a variable.
  • Calculate the frequency of all the given list elements using the Counter() function which returns the element and its frequency as key-value pair and store this dictionary in a variable(say freqncyDictionary)
  • Take a variable that stores the sum of all the most occurring elements in the given list and initialize its value to 0.
  • Find the maximum frequency in the freqncyDictionary
  • We can find it by converting freqncyDictionary values to list(using list and values() functions) and using max() function.
  • Loop in the freqncyDictionary using the For loop.
  • Check if any element value having a frequency equal to max frequency using the if conditional statement.
  • If it is true then increment the count by the key(list element).
  • The Exit of the program.

Below is the implementation:

# Import the Counter() function from collections using the import keyword.
from collections import Counter
# Give the list as static input and store it in a variable.
gvnlst = [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1]
# Calculate the frequency of all the given list elements using the Counter()
# function which returns the element and its frequency as key-value pair
# and store this dictionary in a variable(say freqncyDictionary)
freqncyDictionary = Counter(gvnlst)
# Take a variable which stores sum of all the most occuring elements in the given list
# and initialize its value to 0
summaxfreqelemnts = 0
# find the maximum frequency in the freqncyDictionary
# We can find it by converting freqncyDictionary values to list(using list and values() functions)
# and using max() function
maxfrqncy = max(freqncyDictionary.values())
print('The sum of elements in the given list', gvnlst,
      'which are having maximum frequency are :')
# loop in the freqncyDictionary using the For loop
for key in freqncyDictionary:
    # check if any element value having frequency equal to max frequency using the if conditional statement.
    if(freqncyDictionary[key] == maxfrqncy):
        # if it is true then increment the count by the key(list element)
        summaxfreqelemnts = summaxfreqelemnts+key
print(summaxfreqelemnts)

Output:

The sum of elements in the given list [4, 5, 5, 2, 4, 2, 2, 3, 3, 4, 9, 8, 5, 1, 1] which are having maximum frequency are :
11

Method #4: Using Counter() function (Hashing, User Input)

Approach:

  • Import the Counter() function from collections using the import keyword.
  • Give the list as user input using the list(),map(),split(),int functions and store it in a variable.
  • Calculate the frequency of all the given list elements using the Counter() function which returns the element and its frequency as key-value pair and store this dictionary in a variable(say freqncyDictionary)
  • Take a variable that stores the sum of all the most occurring elements in the given list and initialize its value to 0.
  • Find the maximum frequency in the freqncyDictionary
  • We can find it by converting freqncyDictionary values to list(using list and values() functions) and using max() function.
  • Loop in the freqncyDictionary using the For loop.
  • Check if any element value having a frequency equal to max frequency using the if conditional statement.
  • If it is true then increment the count by the key(list element).
  • The Exit of the program.

Below is the implementation:

# Import the Counter() function from collections using the import keyword.
from collections import Counter
# Give the list as user input using the list(),map(),split(),int functions
# and store it in a variable.
gvnlst = list(
    map(int, input('Enter some random list element separated by spaces = ').split()))
# Calculate the frequency of all the given list elements using the Counter()
# function which returns the element and its frequency as key-value pair
# and store this dictionary in a variable(say freqncyDictionary)
freqncyDictionary = Counter(gvnlst)
# Take a variable which stores sum of all the most occuring elements in the given list
# and initialize its value to 0
summaxfreqelemnts = 0
# find the maximum frequency in the freqncyDictionary
# We can find it by converting freqncyDictionary values to list(using list and values() functions)
# and using max() function
maxfrqncy = max(freqncyDictionary.values())
print('The sum of elements in the given list', gvnlst,
      'which are having maximum frequency are :')
# loop in the freqncyDictionary using the For loop
for key in freqncyDictionary:
    # check if any element value having frequency equal to max frequency using the if conditional statement.
    if(freqncyDictionary[key] == maxfrqncy):
        # if it is true then increment the count by the key(list element)
        summaxfreqelemnts = summaxfreqelemnts+key
print(summaxfreqelemnts)

Output:

Enter some random list element separated by spaces = 10 20 30 40 20 25
The sum of elements in the given list [10, 20, 30, 40, 20, 25] which are having maximum frequency are :
20

Grab the opportunity and utilize the Python Program Code Examples over here to prepare basic and advanced topics too with ease and clear all your doubts.