카운팅 정렬


카운팅 정렬

정렬할 자료값을 정수로 변환해, 그 정수 인덱스 위치에 해당 자료값의 수를 저장하여 이를 통해 자료를 정렬하는 방식 1. 아래와 같이 {1,2,1,3,3,1,4}의 자료가 있을 때, 4(최대 값)+1 크기의 리스트를 생성한다. (혹은 배열 등) 생성된 리스트를 count라고 하면 각 자료값과 일치하는 인덱스에 자료값의 수를 기록한다 카운팅 정렬 2. count가 배열할 위치를 가리키도록 하기위해서, count의 data를 앞의 값과 합한 값으로 수정한다. count 3. 아래와 같이 count의 data-1의 위치에 대응되는 자료값을 위치시키며 정렬한다. 위를 보면 count[4]의 값 또한 -1 한다 그이유는 아래와 같이 같은 자료값을 다시 입력할때 그 다음 위치에 정렬하기 위함이다. python 실행코드 기존코드 def counting_sort(lst,max_num): #입력 리스트, 최대 자료값 count = [0]*(max_num+1) #카운트 리스트 lst_len = len...



원문링크 : 카운팅 정렬