반응형
BOJ 2752 - 세 수 정렬
안녕하세요. 개발 중인 정주입니다.
오늘은 BOJ의 2752번 세 수 정렬 문제를 풀었습니다.
쉬운 문제이지만 정렬에 대해 간단히 정리하기 위해 포스팅 남깁니다.
자세한 정렬 분석은 따로 포스팅을 작성하도록 하겠습니다.
Github
https://github.com/jeongju9216/swiftAlgorithm
문제 링크
https://www.acmicpc.net/problem/2752
풀이
Swift의 내장 함수 sort() 혹은 sorted()를 사용하면 쉽게 해결이 됩니다.
Swift의 정렬은 Tim Sort로 되어 있으며 시간 복잡도는 O(nlogn)입니다.
Tim Sort는 Insert Sort와 Merge Sort가 섞여있는 방식인데요. 자세한 건 따로 포스팅을 작성하려고 합니다.
최종 코드
let input = readLine()!.split(separator: " ").map { Int(String($0))! }.sorted()
print("\(input[0]) \(input[1]) \(input[2])")
입력값을 sorted()로 정렬하여 출력합니다.
마무리 인사
Swift는 자체적으로 시간 복잡도가 괜찮은 정렬 함수를 지원해줘서 좋은 것 같습니다.
감사합니다!
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.
반응형