less than 1 minute read

Problem Statement

leetcode problem link

Brute Force [Accepted]

class Solution:
    def maxDifference(self, s: str) -> int:
        counter = Counter(s)
        odd, even = float('-inf'), float('inf')
        for ch, count in counter.items():
            if count % 2:
                odd = max(odd, count)
            else:
                even = min(even, count)

        return odd - even

Editorial

Approach: Count The Frequency Of Each Character

class Solution:
    def maxDifference(self, s: str) -> int:
        c = Counter(s)
        maxOdd = max(x for x in c.values() if x % 2 == 1)
        minEven = min(x for x in c.values() if x % 2 == 0)
        return maxOdd - minEven