[프로그래머스 LV0] 한 번만 등장한 문자

jonghwan·2022년 12월 5일
0

프로그래머스

목록 보기
69/71
post-thumbnail

1. 문제 설명

한 번만 등장한 문자

2. 문제 분석

s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 반환한다.
한 번만 등장하는 문자가 없을 경우 빈 문자열을 반환한다.

3. 나의 풀이

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) 오름차순으로 정렬해주고 문자열로 바꿔준 후 반환해준다.

0개의 댓글