자신에게 친절할 것 :)

Algorithm, Data

[정렬] 카운팅 정렬 counting sort가 이해 안 될 때..

Tashapark 2024. 8. 3. 21:12
728x90
반응형

텍스트를...보다가 

도저히 이해가 안 가서 이게 ..뭘 카운트 하고 어떻게 

누적합을 사용해서 정렬이 된 다는 거지??????????????

 

하면서,

구글링을 시작하고 거의 약 10개 이상의 포스팅을 보다가

드.디.어 

이해되게 자세히 설명해주신 분의 글을 찾았다. 

 

굳이 정리할 필요도 없이 깔끔하게 써두셨으니 아래 링크로 가면 된다. 

 

+++++내가.. 또 까먹을 까봐 여기에 링크를 남겨두는 것이다. 

+ 왤케 복잡해.. 이거 ...

 

+++ 핵심은

1. 카운트를 셀 때는 데이터의 범위의 값의 개수를 순서대로 배치해서 각각의 개수를 세는 것 

2. 값 별로 카운트 한 밸류를 누적 합산 할 것. 

3. 누적 합산 한 값이 곧! 재배열의 위치가 됨

4. 빈 배열에 다시 배치할 때는 뒤에서부터 넣을 것. 

5. (우리는 이미 위치를 알지만,) 재배치를 할 때는 해당 인덱스의 누적합 -1 이 위치임. (누적합이자나.. 넣을 꺼면 빼야지 ^^)

6. 순서와 위치 및 빼기 다....헷갈리지 말 것   ^^

+++++ 위 핵심으로도 이해가 안 가거나 헷갈리면, 까먹은 것임.. 아래의 포스팅을 보쟈 

 

https://velog.io/@hansung1459/%EC%A0%95%EB%A0%AC-%EA%B3%84%EC%88%98-%EC%A0%95%EB%A0%ACcounting-sort%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90

 

[정렬] 계수 정렬(counting sort)에 대해 알아보자

필자는 Java를 주 언어로 사용하고 있기 때문에 모든 내용이 자바에 맞춰져있다. 이전에는 Python 내용도 다루고 했었지만, 현재는 Java만 공부하고 있기 때문에 타 언어에 대해서는 아쉽지만 기회

velog.io

 

728x90
반응형