Let’s create a program in python which will replace the white spaces
in a string with the character that occurs in the string very least
using the Pandas library.
Example 1:
String S = "akash loves gfg" here: 'g' comes: 2 times 's' comes: 2 times 'a' comes: 2 times 'h' comes: 1 time 'o' comes: 1 time 'k' comes: 1 time 'v' comes: 1 time 'e' comes: 1 time 'f' comes: 1 time 'l' comes: 1 time In this example, there are 7 characters with least frequency 1 so, there can be 7 valid outputs One of the possible output is given below: So, the Output String will be: "akashlloveslgfg".
Example 2:
string ="goodd noon" here: g comes: 1 time o comes: 4 times d comes: 2 times n comes: 2 times So the character with the least frequency 1 is g So here white spaces will be replaced by the character g and the output will be: "gooddgnoon"
Now, Let’s see the implementation:
Python3
# importing pandas library import pandas as pd # taking string with white spaces newstr1 = 'akash loves gfg' # printing the original string print ( "Original String given by user:" , newstr1) # converting string into # list of characters ser = pd.Series( list (newstr1)) # counting the frequency # of characters element_freq = ser.value_counts() # printing character and their # respective frequency print (element_freq) current_freq = element_freq.dropna().index[ - 1 ] # function element_freq.dropna() # will Return a new Series with # missing values removed result = "".join(ser.replace( ' ' , current_freq)) print (result) |
Output:
The overall time complexity is O(n log n).
The auxiliary space complexity is O(n), where n is the length of the input string.