Python program to find the most occurring character and its count
Last Updated :
15 Mar, 2023
Given a string, write a python program to find the most occurrence character and its number of occurrences. Examples:
Input : hello
Output : ('l', 2)
Input : geeksforgeeks
Output : ('e', 4)
We can solve this problem quickly in python using Counter() method. Simple Approach is to 1) Create a dictionary using Counter method having strings as keys and their frequencies as values. 2) Find the maximum occurrence of a character i.e. value and get the index of it.
Python
# Python program to find the most occurring
# character and its count
from collections import Counter
def find_most_occ_char(input):
# now create dictionary using counter method
# which will have strings as key and their
# frequencies as value
wc = Counter(input)
# Finding maximum occurrence of a character
# and get the index of it.
s = max(wc.values())
i = wc.values().index(s)
print wc.items()[i]
# Driver program
if __name__ == "__main__":
input = 'geeksforgeeks'
find_most_occ_char(input)
Output:
('e', 4)
Time Complexity: O(N) where N is the length of the input string
Auxiliary Space: O(1)
One more approach to find the most occurring character and its count in python3
Python3
# python code to find most occurring character in a string and its count
string1="geeksforgeeks"
list1=[]
list2=[]
for i in string1:
if i not in list1:
list1.append(i)#appending unique characters of string
list2.append(string1.count(i))
#finding maximum in the list
occ=max(list2)
ele=list1[list2.index(occ)]
print(ele,occ)
Time Complexity: O(N)
Auxiliary Space: O(N)
Approach : Using operator.countOf() and index() methods
Python3
# python code to find most occurring character in a string and its count
string1="geeksforgeeks"
list1=[]
list2=[]
for i in string1:
if i not in list1:
list1.append(i)#appending unique characters of string
import operator
list2.append(operator.countOf(string1,i))
#finding maximum in the list
occ=max(list2)
ele=list1[list2.index(occ)]
print(ele,occ)
Time Complexity: O(N)
Auxiliary Space: O(N)
Approach: Using lambda function
This new approach uses a lambda function to count the occurrences of each character in the string, and then creates a list of tuples containing the character and its count. Finally, it finds the tuple with the maximum count and prints its character and counts.
Python3
# python code to find most occurring character in a string and its count
string1 = "geeksforgeeks"
# use a lambda function to count occurrences of each character in the string
count_char = lambda c: string1.count(c)
# create a list of tuples containing the character and its count
char_counts = [(c, count_char(c)) for c in set(string1)]
# find the tuple with the maximum count and print its character and count
most_common = max(char_counts, key=lambda x: x[1])
print(most_common[0], most_common[1])
# Contributed by adityasha4x71
Time Complexity: O(N*N), due to count() function used in the lambda
Auxiliary Space: O(N), for creating a list of tuples containing the character and its count.
Similar Reads
Count occurrences of a character in string in Python We are given a string, and our task is to count how many times a specific character appears in it using Python. This can be done using methods like .count(), loops, or collections.Counter. For example, in the string "banana", using "banana".count('a') will return 3 since the letter 'a' appears three
2 min read
Python | Count the Number of matching characters in a pair of string The problem is about finding how many characters are the same in two strings. We compare the strings and count the common characters between them. In this article, we'll look at different ways to solve this problem.Using Set Sets are collections of unique items, so by converting both strings into se
2 min read
Count the number of Unique Characters in a String in Python We are given a string, and our task is to find the number of unique characters in it. For example, if the string is "hello world", the unique characters are {h, e, l, o, w, r, d}, so the output should be 8.Using setSet in Python is an unordered collection of unique elements automatically removing du
2 min read
Count the number of times a letter appears in a text file in Python In this article, we will be learning different approaches to count the number of times a letter appears in a text file in Python. Below is the content of the text file gfg.txt that we are going to use in the below programs: Now we will discuss various approaches to get the frequency of a letter in a
3 min read
Find all duplicate characters in string in Python In this article, we will explore various methods to find all duplicate characters in string. The simplest approach is by using a loop with dictionary.Using Loop with DictionaryWe can use a for loop to find duplicate characters efficiently. First we count the occurrences of each character by iteratin
2 min read