[swift] 튜플
코드는 Swift로 작성하였습니다.
제가 직접 작성한 코드라 최적의 코드가 아닐 수 있음을 알려드립니다. 🐹
문제는 저작권 관련 문제가 있을 수 있어서 적어두지 않았습니다.
✍🏻 생각정리
처음 든 생각 : 호오 어렵네 ? 저기서 어떻게 숫자만 뽑아낸담 ...
return되는 배열 안의 숫자 순서도 중요한듯한디...
-> 많이 나온 순서로 출력되고 있구나
- 잘 쪼갠다
- 숫자가 나온 횟수를 센다
- 횟수가 많은 순서대로 배열에 넣어서 return한다.
👩🏻💻 코드
import Foundation
func solution(_ s:String) -> [Int] {
var result = [Int]()
// } , { 기준으로 쪼갠다
var new = s.components(separatedBy: ["}","{", ","])
var myTuple: [String:Int] = [:]
// Int로 바꿨을 때 nil이 아니라면 숫자라는 뜻
// 숫자가 아닌데 해당 키에 값이 없다면 1 넣어주고 있다면 value에 1 더해준다.
for i in new {
if Int(i) != nil {
myTuple[i] = myTuple[i] == nil ? 1 : myTuple[i]! + 1
}
}
// value가 큰 순으로 정렬
let newTuple = myTuple.sorted{$0.value > $1.value}
// 앞에서부터 key값을 result 배열에 넣어준다.
for i in newTuple {
result.append(Int(i.key)!)
}
return result
}
잘 짜여진 코드인지는 모르겠다 ...ㅠ_ㅠ for문 도배 ...
Author And Source
이 문제에 관하여([swift] 튜플), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sso0022/swift-튜플저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)