정렬 알고리즘
컴퓨터시스템응용기술사 제122회 4교시 27번 문항으로, 과목은 SW공학/프로젝트관리입니다. ‘시간 복잡도’ 키워드는 컴퓨터시스템응용기술사 기출 4문항에 나왔습니다.
원문 문제
컴퓨터시스템응용기술사 제122회 27번. 정렬 알고리즘
- 가. 선택정렬(Selection Sort)과 삽입정렬(Insertion Sort), 퀵정렬(Quick Sort) 알고리즘
- 나. 다음 키 값을 갖는 파일을 퀵정렬(Quick Sort) 알고리즘을 사용하여 오름차순으로 정렬하려고 한다. 피벗이 50일 때 수행되는 분할과정을 단계적으로 설명 (단, n=8 : 50, 80, 20, 90, 40, 10, 30, 60)
핵심 키워드
- 선택 정렬
- 삽입 정렬
- 퀵 정렬
- 분할 과정
- 시간 복잡도
- 공간 복잡도
고득점 가이드 — 1. 개요
정렬 알고리즘은 자료의 키 값을 일정 순서로 재배치하는 기본 연산이며, 시간·공간 복잡도와 안정성, 캐시 친화성 특성에 따라 데이터 규모와 사전 정렬도에 맞게 선택된다. 선택정렬·삽입정렬은 구현이 단순하고 소규모 데이터에 적합하며, 퀵정렬은 분할정복으로 평균 O(n log n) 의 빠른 성능을 제공해 대규모 데이터 정렬의 사실상 표준 기법이다. 알고리즘별 특성을 이해해야 입력 분포·메모리·안정성 제약에 맞춘 최적 선택이 가능하다.
출제 이력
- 선택 정렬기출 1문항
- 삽입 정렬기출 1문항
- 퀵 정렬기출 1문항
- 분할 과정기출 1문항
- 시간 복잡도기출 4문항
- 공간 복잡도기출 2문항
같은 과목 문항
- 제122회 9번백트래킹(Backtracking), 분할정복, 탐욕법, 동적계획법의 개념 및 알고리즘 사례1교시무료
- 제122회 30번응용시스템 개발과정에서 적용할 테스트 기법 결정 시 고려사항과 단위 테스트 종료 기준4교시
- 제123회 10번ERP(Enterprise Resource Planning)의 POC(Proof Of Concept)1교시무료
- 제123회 21번XP(eXtreme Programming)의 특징 및 실천 방법(practice)3교시
- 제123회 24번정보통신기술(ICT) 시스템 통합(system integration) 시 시험단계(test phase)에서의 성능시험(performance test) 결과보고서에 포함하여야 할 주요목차와 내용3교시
- 제120회 11번마이크로서비스 아키텍쳐(Micro-service Architecture)1교시무료