112. remove duplicate characters in a string

medium  - accepted / - tried

Given a string, write a function to remove the duplicate characters to make sure that each character only occurs once.

For example


Each character appears twice, we could make it unique as follows


Above all substrings subsequences (*) contains unique characters, but you need to return the smallest one in lexicographical order( 'a' -> 'z'), which is 'abcxyz'.

All input only contains valid lowercase alphabets only.

Bugfree ordinary solution is better than buggy fancy ones.