Problem: Implement a function to find the first character in a string which only appears once. For example: It returns ‘b’ when the input is “abaccdeff”.
Great solution from Ryan:
You can’t know that the character is un-repeated until you’ve processed the whole string, so my suggestion would be…
Keep 2 lists.
One stores chars that appear once, the other list stores repeated chars.
Code is shown below.
def first_non_repeated_character(string): chars =  repeated =  for character in string: if character in chars: chars.remove(character) repeated.append(character) else: if not character in repeated: chars.append(character) if len(chars): return chars else: return False