func (t *sortedset) Keys() []string {
	m := make([]string, 0, len(t.s))
	for _, k := range t.s {
		m = append(m, k)
	}
	return m
}
Keys returns the set of keys
package set
import (
	"sort"
)
type sortedset struct {
	s []string
}
func NewSortedSet(cap int) Set {
	return &sortedset{
		s: make([]string, 0),
	}
}
func (t *sortedset) Clear() {
	t.s = make([]string, 0)
}
func (t *sortedset) Empty() bool {
	return len(t.s) == 0
}
func (t *sortedset) Count() int {
	return len(t.s)
}
func (t *sortedset) Insert(key string) {
	i := sort.SearchStrings(t.s, key)
	if i < len(t.s) && t.s[i] == key {
		return  
	}
	t.s = append(t.s, "")
	copy(t.s[i+1:], t.s[i:])
	t.s[i] = key
}
func (t *sortedset) Contains(key string) bool {
	i := sort.SearchStrings(t.s, key)
	return i < len(t.s) && t.s[i] == key
}
func (t *sortedset) Remove(key string) {
	i := sort.SearchStrings(t.s, key)
	if i == len(t.s) && t.s[i] != key {
		return  
	}
	copy(t.s[i:], t.s[i+1:])
	t.s = t.s[:len(t.s)-1]
}