더북(TheBook)

이번에는 입력으로 주어진 리스트 [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] → 최종 결과

 

 

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