Alternating Characters

  • + 0 comments

    a brute force solution in python3

    def alternatingCharacters(s):
        # Write your code here
        
        char_map = {}
        last_letter_seen = None
        
        if len(s) <= 1:
            return 0
        
        for each_char in s:
            if each_char not in char_map:
                char_map[each_char] = [1]
            else:
                if last_letter_seen is not None:
                    if last_letter_seen == each_char:
                        char_map[each_char][-1]+=1
                    else:
                        char_map[each_char].append(1)
            
            last_letter_seen = each_char
            
        min_deletions = 0
        
        for char, occ in char_map.items():
            min_deletions += sum(occ) - len(occ)
        
        return min_deletions