17. 3.Bucket Sorting
• 계수 정렬은 키 값이 작은 범위 안에 들어올 때 적용 할
수 있는 방법이지만 버킷 정렬은 키 값의 범위뿐만이 아
니라 그 범위 내에서 키 값이 확률적으로 균등하게 분포
된다고 가정할 수 있을 때 적용할 수 있는 방법
• 설명의 편의상 키 값이 0과 1 사이라고 가정하자. n개의
키가 구간[0,1]을 n등분하고 이들 각각을 하나의 버킷으
로 한다. 각 키를 크기에 따라 각 버킷에 분배한다면, 키
가 구간 내에서 균등하게 분포한다고 가정했으므로 하나
의 버킷에는 하나의 키만 들어있을 확률이 높음
18. 3.Bucket Sorting
• 배열 A :
0.86, 0.32, 0.27, 0.12, 0.49, 0.21, 0.62, 0
.89, 0.71, 0.87
• ① 10개의 데이터가 있다고 하면 구간 크기가
0.1인 10개의 버킷을 만든다.
• ② A의 각 원소 값에 따라 적절한 버킷에 넣
고 같은 버킷에 들어갈 값은 그림(a)와 같이
연결 리스트에 의해 연결시킨다.
• ③ 다음은 각 리스트 B[i]에 대하여 삽입 정렬
을 행한다. 그 결과는 그림(b)와 같다.