s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 반환한다.
한 번만 등장하는 문자가 없을 경우 빈 문자열을 반환한다.
import Foundation
func solution(_ s:String) -> String {
var arr: [String] = []
var result: [String] = []
for i in s {
arr.append(String(i))
}
var counter = [String: Int]()
arr.forEach { counter[$0, default: 0] += 1 }
for (key, value) in counter {
if value == 1 {
result.append(key)
}
}
result.sort()
return result.joined(separator: "")
}
빈 배열(arr)에 s의 요소들을 넣어주고 딕셔너리로 배열의 각 요소의 수를 세준다.
value의 값이 1이면(중복되는 요소가 아니면) 빈 배열(result)에 key 값을 넣어준다.
배열을(result) 오름차순으로 정렬해주고 문자열로 바꿔준 후 반환해준다.