// Sorting
What is Sorting?
임의로 나열되어있는 자료들을 일정한 기준에 따라 배열시키는 것이다.
Example
4 | 23 | 7 | -3 | 9 | 15 | -9 | 0 | 19 | 6 |
Q. 위에 나열된 수들을 오름차순으로 정렬하시오.
A. 정답은 아래와 같다.
-9 | -3 | 0 | 4 | 6 | 7 | 9 | 15 | 19 | 23 |
More about
위 문제에서 자료의 개수는 10개이며, 각 자료들에서 보여지는 수의 범위는 그렇게 크지않다. 그렇다면, 만약 자료의 개수가 1,000,000개이고 각 자료들의 종류나 크기의 범위가 정말 크다면 정렬을 하는것이 쉽지 않을 것이다.
코딩의 Sorting algorithm에는 여러 종류가 있으며 각각 각자의 장단점을 지닌다. 그 예시로 <Counting sort>라는 Sorting algorithm을 들어보자. (자세한 내용은 아래에서 참고 가능하다) <Counting sort>는 자료의 개수는 많으나 자료들의 값의 범위가 크지 않을 때 유용한 Sorting algorithm이다. 예를 들어, 자료의 개수 n은 1,000,000 이지만 임의의 항 An 의 크기가 1,000 이하인 자연수인 경우라고 가정했을 때 유용하게 쓰일 수 있다.
728x90
댓글