본문 바로가기

CS 지식

[C++] 배열과 리스트

1. 배열

동일한 타입의 데이터를 연속적인 메모리 공간에 저장하는 자료구조다.

인덱스를 통해 빠르게 데이터에 접근할 수 있다.

배열 크기를 미리 지정해야 하고, 크기 변경이 불가능하다.

대량의 데이터를 다룰 때 그만큼 연속적인 메모리 공간이 필요하기 때문에, 메모리 할당에 제약을 받을 수 있다.

 

2. 리스트

메모리 동적 할당을 통해 크기를 변경할 수 있다.

노드를 통해 데이터를 저장하는데, 노드는 데이터와 다음 노드를 가리키는 참조로 구성되어 있기 때문에 연속적이지 않은 메모리 공간에 데이터를 효율적으로 저장할 수 있다.

특정 인덱스의 데이터에 접근하기 위해 처음부터 순서대로 이동하는 구조이기 때문에 데이터 접근 속도가 느리다.

 

참고자료

https://f-lab.kr/insight/understanding-data-structures?gad_source=1&gbraid=0AAAAACGgUFdsv-QlAF10nxnUwwmrMl9PI&gclid=CjwKCAjw8IfABhBXEiwAxRHlsGwzNROLWjW9jscq5gI_gTynbh0O2VJ78d4iQhdki2goQzWNAAvqIxoCiK4QAvD_BwE

https://velog.io/@youhyeoneee/C-STL-%EB%A6%AC%EC%8A%A4%ED%8A%B8list

 

 

'CS 지식' 카테고리의 다른 글

[C++] const와 pointer  (0) 2025.04.20
[C++] Cast  (0) 2025.04.19
[C++] Sort 함수  (0) 2025.04.19
[C++] 정렬의 종류  (0) 2025.04.17
[C++] Name Mangling (Decoration)  (0) 2025.04.14