input: Write a function to remove duplicate characters from a given string. The function should return a new string where each character appears only once, regardless of its frequency in the original string. If the input string is empty, the function should return an empty string.
  assert remove_duplicate_characters("bufferoverflow")=="bufover"
  assert remove_duplicate_characters("aabbbc")=="abc"
  assert remove_duplicate_characters("xyz")=="xyz"
  assert remove_duplicate_characters("")==""
  assert remove_duplicate_characters("a")=="a"
output: def remove_duplicate_characters(s):
      seen = set()
      result = []
      for char in s:
          if char not in seen:
              seen.add(char)
              result.append(char)
      return ''.join(result)