[C++] STL List 사용법
<C++ List>
안녕하세요.
개발자 김모씨입니다.
오늘은, C++에서 Vector 만큼이나 가장 기본적이며, 자주 쓰는 Container인
List에 대해 알아보겠습니다.
목차
List란 무엇인가?
간단히 List에 대해서 알아보죠.
저번 글에서 C++의 Vector에 대해서 알아봤었죠?
아직 안 본 분들은 우선 보고 오시구요...(호다닥)
https://artist-developer.tistory.com/35
Vector 외에도 List, Stack, Queue, Heap, Graph 등 다양한 자료구조가 존재하죠.
혹시 이 글을 읽는 당신!
'그냥 Vector 쓰면 되지! 왜 container 자료구조를 여러 개 알아야 해?'
라고 생각하시나요?
Container 자료구조의 핵심은 CRUD에 있습니다!
Create, Read, Update, Delete의 약자인데요.
데이터 규모가 커질수록, 그 사용 목적에 따라 위의 넷 중 어디에 중점을 둘 것인가가 먼저 정해져야 합니다.
(물론...PoC나 ProtoType과 같은 경우에는 가장 자유로운 자료구조인 Vector로 구현하곤 합니다...ㅠ)
먼저 List에 대해서 알아보고,
위의 질문에 대한 답은 글의 마지막에 이야기해보죠!
숫자를 0~9 까지 나열하는 게임을 생각해볼까요?
나열이 끝나고, 누군가가 "0~4까지 전달해줘" 라고 요청했습니다.
그럼 우린 빠르게 원하는 숫자를 전해줄 수 있겠죠.
마찬가지로 10~14라는 새로운 숫자를 전달받았을 때에도,
숫자 9 뒤에 차례로 나열해서 배치할 수 있습니다.
이 숫자 게임에서 핵심은 무엇일까요?
바로, '순서'를 가지고 있다는 것입니다.
숫자 입장에서 생각해보면,
예를 들어 숫자 5는 앞의 숫자 4와 뒤의 숫자 6에 대해서만 알고 있지만, 숫자 7이 어디에 있는지는 알지 못합니다.
각 숫자가 앞/뒤 숫자가 무엇인지만을 알고있지만, 차례로 접근하다보면 순서가 유지되죠.
List도 이와 같습니다.
각 노드는 서로를 기억하도록 생성되고, 사용자는 순차적으로 해당 데이터들에 접근할 수 있습니다.
그렇다면 L
List 사용법
이어서 쓰기!
List를 쓰는 이유?
마무리