sorting

Study../etcs.. 2010. 3. 5. 01:13
각종 정렬방법에 대한 정리.
자격증 시험 공부 중...
출처는 위키피디아.
1. shell sort
긴 배열을 토막내서 부분부분 정렬한다.
처음에는 토막을 크개 내서 정렬하다가 점점 토막을 작게 내서 정렬하고,
마지막에는 삽입 정렬을 한다.
예를 들어..
장점은 이동하는 거리가 크지 않다는 것.
특징은 내부 정렬이라는 것.
2. insertion sort
이른바 삽입정렬.
순서대로 점검하면서 뒤에 오는 수가 현재의 수의 max 보다 작으면 순서에 맞춰서 삽입하여 정렬 해준다.
그림으로 더 쉽게 표현이 될 것 같다.
실행은 다음과 같이 될꺼다.
3. Quick sort
divide and conquer 가 핵심이다.
전체에서 축을 잡은 다음 그것을 토대로 비교를 하며 swap 한다. (3개를)
진행하며 정렬이 되어서 축을 기준으로 큰것 / 작은것이 완전 구분이 되면
그 축을 기준으로 부분으로 나누고, 다시 이전 과정을 반복한다.
(축을 잡고 비교하며 스왑)
그림으로 보는 것이 가장 깔끔할 것 같다.
과정을 예를 들면 다음과 같이 들 수 있다.
4. bubble sort
바로 옆의 것을 비교하며 정렬한다.
축이나 뭐 특별한 것 없다.
순서대로 한번 지나가며 바로 옆의 것이랑 비교 정렬 해주고,
다시 정렬 해주고.. 반복 하는 식.
그림으로 보면 다음과 같다.
예를 들어 위에서 사용된 배열을 이용해서 bubble sort 해보자.

다른 정렬은 다음에 더 필요하면 올리도록 하겠다...
마지막으로 위키피디아에서 분류된 정렬의 종류 표..
일일이 다 "새 창에서 뜸" 으로 바꿔주기 귀찮으니..;;;
아래 주소 가서 맨 아래 가서 보기 바란다..;;

'Study.. > etcs..' 카테고리의 다른 글

V3 지우는 방법......  (0) 2010.03.18
PLC (Programmable Logic Controller)  (2) 2010.03.05
어셈블리어 관련 정리  (0) 2010.03.05
DMA 동작모드  (0) 2010.02.28
tree traverse  (0) 2010.02.28
Posted by Yoons...
,