제약사향 1. 데이터(값)은 양수여야 한다. 2. 값의 범위가 너무 크지 않아야 한다.(메모리 사이즈를 넘어서는 안된다) ▶ 이유 : 배열의 인덱스를 이용하여 데이터를 저장 할 것 이기 때문에
비교정렬 x, 안정정렬
2. 정렬방법
모든 숫자의 갯수를 센 후, 누적 합을 구하고 다시 숫자를 넣음 예시) 1. [3,4,0,1,2,4,2,4], [개수를 저장할 공간], [결과] ▶ 개수를 저장할 공간을 정렬할 제일 큰 수의 갯수만큼 0으로 만들어줌 2. [3,4,0,1,2,4,2,4], [0,0,0,0,0], [결과] ▶처음부터 개수를 세어 저장. 0은 1개, 1은 1개, 2는 2개, 3은 1개, 4는 3개 3. [3,4,0,1,2,4,2,4], [1,1,2,1,3], [결과] ▶개수를 저장한 것을 누적합으로 변경. 순서대로 1, 2, 4, 5, 8이 됨 4. [3,4,0,1,2,4,2,4], [1,2,4,5,8], [결과] ▶누적합을 바탕으로 숫자를 결과에 넣어줌 0은 1에, 1은 2에, 2는 3~4에 3은 5에, 4는 6~8에 넣어주면 됨 5. [3,4,0,1,2,4,2,4], [1,2,4,5,8], [0,1,2,2,3,4,4,4] → 누적합 : 인덱스 역할 ▶1,3,4,7이 있으면 1은 0~1 사이에, 2는 1~3 사이에, 3은 3~4 사이에, 4는 4~7 사이에 넣으라는 뜻