안녕하세요! 가족과 함께하는 스마트 라이프입니다. 지난 시간에 ‘알고리즘’이 문제를 해결하는 순서라는 걸 배웠죠? 오늘은 그중에서도 가장 유명한 마법 중 하나인 ‘정렬(Sorting)’을 배워볼 거예요. 뒤죽박죽 섞인 숫자 카드를 작은 것부터 큰 순서대로 척척 정리하는 신기한 능력이랍니다!

1. 정렬은 ‘번호순으로 줄 세우기’예요
우리가 학교에서 키 순서대로 줄을 서거나, 도서관에서 책을 가나다순으로 정리하는 것이 바로 정렬이에요. 컴퓨터도 정보를 찾을 때 뒤죽박죽 섞여 있는 것보다 예쁘게 정렬되어 있는 상태를 훨씬 좋아한답니다. 정렬이 잘 되어 있어야 원하는 정보를 번개처럼 빨리 찾을 수 있거든요!
2. 가장 쉬운 정렬 마법: 버블 정렬(Bubble Sort)
정렬 방법은 아주 많지만, 오늘은 ‘거품(Bubble)’처럼 보글보글 올라오며 정리되는 마법을 배워볼게요. 바로 옆에 있는 친구랑만 키를 비교해서 더 큰 친구를 오른쪽으로 보내는 방법이에요. 끝까지 가고 나면 가장 큰 숫자가 맨 뒤에 ‘보글’하고 도착하게 된답니다.
3. 실전 연습: 뒤섞인 숫자 카드 정리하기
파이썬에는 사실 sort()라는 강력한 자동 정리 주문이 있지만, 오늘은 알고리즘 요정답게 직접 순서를 정해볼까요?
# 1. 뒤죽박죽 숫자 카드 뭉치
cards = [5, 2, 9, 1, 6]
print(f"📦 정리 전 카드: {cards}")
# 2. 정렬 요정의 마법 (버블 정렬)
n = len(cards)
for i in range(n):
for j in range(0, n - i - 1):
# 옆에 있는 친구가 나보다 더 크면? 자리를 바꿔요!
if cards[j] > cards[j + 1]:
cards[j], cards[j + 1] = cards[j + 1], cards[j]
print(f"✨ 정리 후 카드: {cards}")
print("와! 작은 숫자부터 차례대로 줄을 섰어요!")

4. 정렬 마법사가 되면 무엇을 할 수 있나요?
정렬을 잘 활용하면 이런 프로그램을 만들 수 있어요!
- 게임 점수판: 점수가 높은 사람부터 1등, 2등 순서로 보여줄 수 있어요.
- 쇼핑몰 정렬: 가격이 싼 물건부터 차례대로 보여줄 수 있죠.
- 이름 찾기: 반 친구들의 이름을 가나다순으로 정리해서 출석부를 만들어요.
5. 가족과 함께하는 ‘인간 버블 정렬’ 놀이
아이와 함께 거실에서 직접 정렬 요정이 되어보세요! 가족들이 각자 숫자가 적힌 종이를 들고 무작위로 서는 거예요. 그리고 오늘 배운 규칙대로 “내 오른쪽 사람과 숫자를 비교해서 내가 더 크면 자리를 바꾼다!”를 반복하는 거죠. 한 바퀴를 돌 때마다 큰 숫자가 맨 끝으로 이동하는 걸 눈으로 직접 확인하면, 알고리즘의 원리가 머릿속에 쏙쏙 박히게 됩니다.
마치며: 차곡차곡 정리하는 습관
오늘 우리는 무질서한 데이터에 질서를 부여하는 ‘정렬’ 마법을 배웠습니다. 알고리즘은 복잡한 것을 단순하고 깨끗하게 만드는 힘을 가지고 있어요. 다음 시간에는 수많은 데이터 중에서 내가 원하는 보물을 딱 찾아내는 ‘탐색(Search) 요정’의 마법을 배워보겠습니다!



