테스트 케이스의 개수가 10,000,000 정도로 매우 많고, 수의 범위가 1~10000으로 제한적인 경우 계수정렬을 사용한다.
데이터: 3, 1, 6, 2, 9, 1, 4, 8, 0, 2 인 경우
arrayIndex : 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
arrayValue : 1 | 2 | 2 | 1 | 1 | 0 | 1 | 0 | 1 | 1 |
var numArray = Array(repeating: 0, count: 10001)
for _ in 0..<num {
let a = Int(readLine()!)!
numArray[a] += 1
}
for i in 0..<numArray.count {
if numArray[i] != 0 {
for _ in 0..<numArray[i] {
print(i)
}
}
}