본문 바로가기
개발/C++

[C++] std::list 메서

by WaDDak 2024. 9. 6.

1. push_back()

  • 설명: 리스트의 끝에 새로운 요소를 추가합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.push_back(10);

2. push_front()

  • 설명: 리스트의 앞에 새로운 요소를 추가합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.push_front(5);

3. pop_back()

  • 설명: 리스트의 끝에 있는 요소를 제거합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.pop_back();

4. pop_front()

  • 설명: 리스트의 앞에 있는 요소를 제거합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.pop_front();

5. size()

  • 설명: 리스트의 요소 개수를 반환합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.size();

6. empty()

  • 설명: 리스트가 비어있는지 여부를 확인합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.empty();

7. clear()

  • 설명: 리스트의 모든 요소를 제거합니다.
  • 시간 복잡도: O(n) (리스트의 모든 요소를 제거).
  • 예제: list.clear();

8. insert()

  • 설명: 특정 위치에 요소를 삽입합니다.
  • 시간 복잡도: 위치에 따라 O(1)에서 O(n).
  • 예제: list.insert(it, 15); (it은 리스트의 반복자)

9. erase()

  • 설명: 특정 위치의 요소를 제거합니다.
  • 시간 복잡도: O(1)에서 O(n).
  • 예제: list.erase(it);

10. front()

  • 설명: 리스트의 첫 번째 요소를 반환합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.front();

11. back()

  • 설명: 리스트의 마지막 요소를 반환합니다.
  • 시간 복잡도: 상수 시간 (O(1)).
  • 예제: list.back();

12. reverse()

  • 설명: 리스트의 요소 순서를 뒤집습니다.
  • 시간 복잡도: O(n).
  • 예제: list.reverse();

13. sort()

  • 설명: 리스트의 요소를 정렬합니다.
  • 시간 복잡도: O(n log n).
  • 예제: list.sort();

 

#include <iostream>
#include <list>

int main() {
    std::list<int> myList;

    // 1. push_back()
    myList.push_back(10);

    // 2. push_front()
    myList.push_front(5);

    // 3. pop_back()
    myList.pop_back();

    // 4. pop_front()
    myList.pop_front();

    // 5. size()
    std::cout << "Size: " << myList.size() << std::endl;

    // 6. empty()
    if (myList.empty())
        std::cout << "List is empty!" << std::endl;

    // 7. clear()
    myList.push_back(15);
    myList.push_back(20);
    myList.clear();

    // 8. insert()
    myList.push_back(1);
    auto it = myList.begin();
    myList.insert(it, 2);

    // 9. erase()
    it = myList.begin();
    myList.erase(it);

    // 10. front()
    myList.push_back(10);
    std::cout << "Front: " << myList.front() << std::endl;

    // 11. back()
    std::cout << "Back: " << myList.back() << std::endl;

    // 12. reverse()
    myList.reverse();

    // 13. sort()
    myList.sort();

    return 0;
}

'개발 > C++' 카테고리의 다른 글

[C++] std::string  (1) 2024.08.30
<algorithm> 메서드  (0) 2024.08.28
삼총사  (0) 2024.08.25
[C++] 덱 std::deque  (0) 2024.08.25
[C++] 큐 std::queue  (0) 2024.08.25