이번에는 입력으로 주어진 리스트 [2, 4, 5, 1, 3]을 정렬하는 과정을 단계적으로 따져 보겠습니다. 종이와 연필을 준비하고 다음 과정을 직접 손으로 쓰면서 따라가 보세요. 알고리즘도 수학 문제처럼 직접 손으로 풀어 볼 때 제대로 이해되고 기억에 남습니다.

     

    ① 시작

    a = [2 4 5 1 3] → 쉼표 생략

    result = []

     

    a 리스트의 최솟값인 1a에서 빼내어 result에 추가합니다.

    a = [2 4 5 3]

    result = [1]

     

    a에 남아 있는 값 중 최솟값인 2a에서 빼내어 result에 추가합니다.

    a = [4 5 3]

    result = [1 2]

     

    a에 남아 있는 값 중 최솟값인 3을 같은 방법으로 옮깁니다.

    a = [4 5]

    result = [1 2 3]

     

    a에 남아 있는 값 중 최솟값인 4를 같은 방법으로 옮깁니다.

    a = [5]

    result = [1 2 3 4]

     

    a에 남아 있는 값 중 최솟값인 5를 같은 방법으로 옮깁니다.

    a=[]

    result = [1 2 3 4 5]

     

    a가 비어 있으므로 종료합니다.

    result = [1 2 3 4 5] → 최종 결과

     

     

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.