Language/C, C++

[C++] STL List 사용법

개발자 김모씨 2022. 5. 3. 17:00
반응형

<C++ List>

안녕하세요.
개발자 김모씨입니다.

오늘은, C++에서 Vector 만큼이나 가장 기본적이며, 자주 쓰는 Container인
List에 대해 알아보겠습니다.

목차

     


    List란 무엇인가?


    간단히 List에 대해서 알아보죠.

    저번 글에서 C++의 Vector에 대해서 알아봤었죠?
    아직 안 본 분들은 우선 보고 오시구요...(호다닥)
    https://artist-developer.tistory.com/35

     

    [C++] STL Vector 사용법

    안녕하세요. 개발자 김모씨입니다. 오늘은, C++의 시작과 끝이라 할 수 있는 Vector에 대해 알아보겠습니다. 우리가 C언어를 사용할 때 가장 스트레스 받는 일은 무엇이었나요? 뭐...여러가지가 있

    artist-developer.tistory.com

    Vector 외에도 List, Stack, Queue, Heap, Graph 등 다양한 자료구조가 존재하죠.
    혹시 이 글을 읽는 당신!
    '그냥 Vector 쓰면 되지! 왜 container 자료구조를 여러 개 알아야 해?'
    라고 생각하시나요?

    Container 자료구조의 핵심은 CRUD에 있습니다!
    Create, Read, Update, Delete의 약자인데요.
    데이터 규모가 커질수록, 그 사용 목적에 따라 위의 넷 중 어디에 중점을 둘 것인가가 먼저 정해져야 합니다.
    (물론...PoC나 ProtoType과 같은 경우에는 가장 자유로운 자료구조인 Vector로 구현하곤 합니다...ㅠ)

    먼저 List에 대해서 알아보고,
    위의 질문에 대한 답은 글의 마지막에 이야기해보죠!

    출처 : https://www.chaisplay.com/

    숫자를 0~9 까지 나열하는 게임을 생각해볼까요?
    나열이 끝나고, 누군가가 "0~4까지 전달해줘" 라고 요청했습니다.
    그럼 우린 빠르게 원하는 숫자를 전해줄 수 있겠죠.
    마찬가지로 10~14라는 새로운 숫자를 전달받았을 때에도,
    숫자 9 뒤에 차례로 나열해서 배치할 수 있습니다.

    이 숫자 게임에서 핵심은 무엇일까요?
    바로, '순서'를 가지고 있다는 것입니다.
    숫자 입장에서 생각해보면,
    예를 들어 숫자 5는 앞의 숫자 4와 뒤의 숫자 6에 대해서만 알고 있지만, 숫자 7이 어디에 있는지는 알지 못합니다.
    각 숫자가 앞/뒤 숫자가 무엇인지만을 알고있지만, 차례로 접근하다보면 순서가 유지되죠.

    List도 이와 같습니다.
    각 노드는 서로를 기억하도록 생성되고, 사용자는 순차적으로 해당 데이터들에 접근할 수 있습니다.

    그렇다면 L


     

    List 사용법

     

     

    이어서 쓰기!

     

     


     

    List를 쓰는 이유?

     

     

     

     

     

     

     


     

    마무리

     

     

     

     

     



    반응형