연습 문제

핵심 정렬 알고리즘 비교 (컴퓨터/정보 대학 전공)

문제에 답하고 제출하면 정답과 풀이를 확인할 수 있습니다. 한 세트는 5문항으로 구성됩니다.

아래의 기본 문제를 먼저 풀어 보세요. 자동 채점 화면은 자바스크립트가 켜진 브라우저에서 이용할 수 있습니다.

문제와 해설로 복습하기

이 단원의 기본 문제 5개입니다. 먼저 스스로 풀고, 힌트와 해설을 열어 풀이 과정을 비교해 보세요. 위의 채점 연습에서는 기본 문제를 다시 풀거나, 지원되는 수학 단원의 변형 문제를 풀 수 있습니다.

기본 문제 1

삽입 정렬로 [5, 2, 4]를 오름차순 정렬할 때 첫 번째 원소 5를 정렬된 부분으로 보고 2를 삽입한 직후 배열은 무엇인가요?
  1. [2, 5, 4]
  2. [5, 2, 4]
  3. [2, 4, 5]
  4. [4, 2, 5]
힌트 보기2가 5보다 작으므로 5를 오른쪽으로 옮깁니다.
정답과 풀이 보기
정답: [2, 5, 4]
  1. 1. 풀이

    정렬된 부분 [5]에 2를 삽입하면 5가 한 칸 밀려 [2,5]가 되고 아직 4는 처리하지 않았습니다.

기본 문제 2

선택 정렬은 각 단계에서 어떤 일을 하나요?
  1. 남은 부분의 최솟값을 찾아 앞자리와 바꾼다
  2. 인접 원소를 끝까지 계속 교환한다
  3. 배열을 둘로 나눠 합친다
  4. 힙의 루트만 삭제한다
힌트 보기한 자리씩 정렬된 구간을 넓히는 방식을 생각하세요.
정답과 풀이 보기
정답: 남은 부분의 최솟값을 찾아 앞자리와 바꾼다
  1. 1. 풀이

    선택 정렬은 미정렬 구간에서 최솟값을 선택해 구간의 맨 앞과 교환합니다.

기본 문제 3

병합 정렬이 길이 n의 배열을 정렬할 때 시간 복잡도가 O(n log n)인 이유는 무엇인가요?
  1. log n 단계에서 각 단계마다 총 n개를 병합하기 때문
  2. 모든 쌍을 비교하기 때문
  3. 정렬 전에 해시를 만들기 때문
  4. 원소 수와 무관하게 한 번만 훑기 때문
힌트 보기분할 깊이와 한 단계의 병합량을 곱하세요.
정답과 풀이 보기
정답: log n 단계에서 각 단계마다 총 n개를 병합하기 때문
  1. 1. 풀이

    배열은 절반씩 나뉘어 log n 깊이가 되고, 각 깊이에서 원소 전체를 선형 시간으로 합칩니다.

기본 문제 4

이름이 같은 직원의 입력 순서를 유지해야 하는 정렬 요건은 무엇인가요?
  1. 안정성
  2. 분할 가능성
  3. 적재율
  4. 균형도
힌트 보기키가 같은 원소들의 상대 순서를 보세요.
정답과 풀이 보기
정답: 안정성
  1. 1. 풀이

    안정 정렬은 비교 키가 같은 원소의 상대적인 기존 순서를 보존합니다.

기본 문제 5

퀵 정렬의 평균 시간 복잡도는 O(n log n)이지만 최악에 O(n²)이 될 수 있는 대표적인 이유는 무엇인가요?
  1. 피벗이 계속 가장 작은 값이나 가장 큰 값이 되어 분할이 치우쳐서
  2. 퀵 정렬은 비교를 하지 않아서
  3. 모든 원소를 보조 배열에 복사해서
  4. 항상 안정 정렬이어서
힌트 보기각 분할에서 양쪽 크기가 비슷한지 살펴보세요.
정답과 풀이 보기
정답: 피벗이 계속 가장 작은 값이나 가장 큰 값이 되어 분할이 치우쳐서
  1. 1. 풀이

    매번 한쪽은 n-1개, 다른 쪽은 0개로 나뉘면 재귀 깊이가 n이 되고 각 단계의 분할 비용도 누적됩니다.

참고 근거와 확인 범위

설명·예제·문제 구성 및 오류 수정 책임: 프리런. 위 자료는 표시한 주제를 확인하거나 더 읽기 위한 근거이며, 외부 기관의 공식 수업이나 감수본을 뜻하지 않습니다.

참고 자료 연결 점검: 2026-11-02. 제작 방식·검수 범위와 수정 기록에서 확인 범위를 볼 수 있습니다. 오류는 상단의 의견 보내기 또는 contact@freelearn.io로 알려 주세요.