삽입정렬 > 문제은행

본문 바로가기


실력키우기 자료처리

1158 : 삽입정렬

제한시간: 1000 ms    메모리제한: 32 MB
해결횟수: 994 회    시도횟수: 1623 회   



삽입정렬(Insertion sort)은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입하는 방법이다.

 

수열이 {5 4 3 7 6}이 있을 경우의 삽입정렬 과정은 다음과 같다.
처음상태에서 처음 값 5 앞에 아무것도 없으므로 5는 이미 정렬된 상태가 되므로, 이후 4부터 정렬과정을 살펴보자.

e3050b66a1b29a01767400d7560a4131_1449727

※ 3단계의 경우 7은 앞의 "3 4 5"보다 크므로 제자리에 삽입된다.

n개의 수열이 주어지면 위와 같은 방법으로 정렬하는 과정 각 단계를 출력하는 프로그램을 작성하시오.


첫줄에 수열의 길이 N(4≤N≤100)이 주어진다. 두 번째 줄에 N개의 0이상 100이하의 정수가 주어진다.



처음 상태를 제외하고 정렬과정의 각 단계별 결과를 "출력예"와 같이 출력한다.


[Copy]
5
5 4 3 7 6
[Copy]
4 5 3 7 6
3 4 5 7 6
3 4 5 7 6
3 4 5 6 7


출처 : jungol



HancomEducation E-mail : hancomc@hotmail.com, comkiwer@naver.com Tel : 070-7163-5782 FAX : 031-388-0996 정올소개 이용약관 개인정보처리방침
경기도 안양시 동안구 호계동 1065-10 협성골드프라자 601호, 경기도 안양시 동안구 평촌대로 109 협성골드프라자 601호
Copyright@2010-2015 jungol. All right reserved.