seegongsik
내 단어장
데이터

줄 세워 담기, 배열과 리스트

여러 물건을 차곡차곡 담아 두는 방법은 한 가지가 아니에요. 칸을 번호 순서대로 딱 붙여 두면 번호만 대고 바로 꺼낼 수 있어요. 대신 칸을 여기저기 흩어 두고 다음 칸 주소만 쪽지로 이어 두면, 중간에 새 칸을 끼워 넣기가 쉬워요. 빠르게 꺼내기와 쉽게 끼워 넣기, 둘 중 무엇을 고를까요?

01

붙어 있는 사물함, 배열

앞에서 그릇마다
모양이 다르다고 배웠어요.
그중 가장 단순한 모양이 배열이에요.
번호가 붙은 칸들을
한 줄로 딱 붙여 놓은 사물함이죠.
0번, 1번, 2번처럼
칸마다 번호가 매겨져 있어요.
칸이 모두 붙어 있으니
번호만 알면 어디 있는지 바로 알아요.

배열 (번호로 붙어 있는 칸)
번호를 눌러 그 칸으로 점프해봐요

번호를 눌러 그 칸으로 바로 점프해봐요. 칸들이 붙어 있어 번호로 곧장 찾아요.

번호를 누르자
곧바로 그 칸이 빛났죠.
칸들이 나란히 붙어 있으니
몇 번 칸이든 단번에 짚어요.
이렇게 번호로 바로 꺼내는 걸
빠른 접근이라고 해요.
배열의 가장 큰 장점이죠.
그런데 칸을 꼭 붙여 두어야만 할까요?
흩어 둬도 되지 않을까요?

02

흩어진 사물함, 리스트

리스트는 칸을 붙이지 않아요.
칸들이 여기저기 흩어져 있죠.
그럼 어떻게 순서를 이을까요?
칸마다 쪽지를 한 장씩 붙여요.
그 쪽지엔
다음 칸이 어디 있는지 주소가 적혀 있어요.
그래서 첫 칸에서 쪽지를 보고
다음 칸으로, 또 그 쪽지를 보고
그다음 칸으로 따라가요.

리스트 (흩어진 칸 + 다음 칸 주소 쪽지)
#34A여기
#07B
#91C
#22D
쪽지를 눌러 다음 칸으로 따라가봐요

쪽지를 눌러 다음 칸으로 따라가봐요. 칸은 흩어져 있어도 쪽지가 순서를 이어요.

쪽지를 따라가니
흩어진 칸들이 한 줄로 이어졌죠.
번호로 바로 가는 배열과 달리
리스트는 쪽지를 보고
한 칸씩 차례로 가야 해요.
조금 번거로워 보이지만
이 흩어진 구조가
뜻밖의 장점을 줘요.
그게 무엇인지는 곧 보게 될 거예요.

03

빠른 접근 vs 느린 접근

이제 둘을 견줘 봐요.
5번째 칸을 꺼내고 싶어요.
배열은 번호만 대면 끝이에요.
칸이 붙어 있어 단번에 점프하죠.
리스트는 그럴 수 없어요.
첫 칸부터 쪽지를 따라
한 칸, 두 칸, 세 칸
차례로 세며 가야 해요.
그래서 멀수록 더 오래 걸려요.

목표: 5번째 칸 꺼내기
배열
0A
1B
2C
3D
4E
클릭 0
리스트
0A
1B
2C
3D
4E
클릭 0
양쪽에서 5번째를 꺼내 클릭 수를 비교해봐요

5번째를 꺼내봐요. 배열은 한 번에, 리스트는 처음부터 한 칸씩. 클릭 수를 비교해봐요.

차이가 또렷하죠.
배열은 한 번 눌러 바로,
리스트는 여러 번 눌러 겨우 도착했어요.
번호로 바로 가는 배열이
꺼내는 일엔 훨씬 빨라요.
그럼 배열이 무조건 좋은 걸까요?
아니에요. 다음 장면을 보면
리스트가 빛나는 순간이 와요.
중간에 무언가를 끼워 넣을 때예요.

04

중간에 끼워 넣기

이번엔 줄 한가운데에
새 칸을 끼워 넣어 볼게요.
리스트는 아주 쉬워요.
앞 칸의 쪽지가 가리키는 곳을
새 칸으로 바꾸고,
새 칸의 쪽지가
원래 다음 칸을 가리키게만 하면 돼요.
쪽지 두 장만 고쳐 끼우면
나머지 칸은 그대로 둬도 끝나요.

목표: 가운데에 새 칸 X 끼우기
배열
A
B
C
D
리스트
B
->
C
양쪽에서 X를 끼워 손이 얼마나 가나 비교해봐요

가운데에 새 칸을 끼워봐요. 리스트는 쪽지 두 장만, 배열은 뒤 칸을 다 밀어요. 손이 얼마나 가나 비교해봐요.

배열은 어땠나요?
중간에 자리를 내려면
뒤 칸을 하나씩 다 밀어야 했죠.
칸이 붙어 있어 빈자리가 없으니까요.
리스트는 쪽지 두 장으로 끝났고요.
그래서 중간에 자주 끼워 넣는 일엔
리스트가 훨씬 편해요.
빠른 접근은 배열,
쉬운 삽입은 리스트.
둘은 서로를 맞바꾼 사이예요.

05

정리해볼까요

한 줄로 모으면 이래요.
배열은 번호 붙은 붙은 사물함,
번호로 바로 꺼내 빠른 접근.
리스트는 흩어진 사물함에
다음 칸 주소 쪽지를 단 것,
중간 삽입이 쉬워요.
5번째를 꺼낼 땐 배열이 빠르고,
중간에 끼울 땐 리스트가 편해요.
무엇을 자주 하느냐로 골라요.

핵심 4가지를 차례로 눌러봐요
아래 핵심을 위에서부터 차례로 눌러봐요

핵심을 차례로 눌러 되짚어봐요. (붙은 사물함 배열 → 흩어진 사물함 리스트 → 빠른 접근 vs 느린 접근 → 중간 삽입)

이제 같은 물건이라도
어떻게 담느냐에 따라
잘하는 일이 달라진다는 걸 알았어요.
배열과 리스트는
그릇 모양을 고르는 첫 갈림길이에요.
다음엔 한쪽 끝에서만
넣고 빼는 특별한 그릇,
쌓기와 줄 서기를
함께 살펴볼 거예요.

한 줄 정리배열은 번호가 붙은 칸들이 딱 붙어 있는 사물함이에요. 번호만 대면 그 칸으로 곧장 점프해서 아주 빠르게 꺼내요. 리스트는 칸들이 여기저기 흩어져 있고, 각 칸이 다음 칸 주소를 적은 쪽지를 들고 있어요. 그래서 5번째를 꺼내려면 처음부터 쪽지를 따라 한 칸씩 가야 해 좀 느려요. 대신 중간에 새 칸을 끼울 땐 쪽지 두 장만 고쳐 끼우면 끝이라 쉬워요. 배열은 반대로 뒤 칸을 다 밀어야 해서 번거롭죠. 빠른 접근이 필요하면 배열, 중간 삽입이 잦으면 리스트, 이렇게 맞바꿔 골라요.
데이터
이 페이지가 도움 됐다면 후원하기