[C++] all about vector

Park Jungmin·2023년 2월 7일
0

코딩테스트

목록 보기
5/5

이제 슬슬 취업 준비를 해야하는 학년이라 코딩테스트 공부를 부랴부랴하기 시작했다. 문제를 하나둘씩 풀다보니 c++의 vector, set, string 등의 기본적인 사용법들을 정리해보는게 좋을 것 같아서 우선 vector부터 정리해보려고 한다.

vector의 사용

  • #include <vector> 필요
  • vector<[data type]> [변수 이름] 으로 선언
    ex) vector v : 비어있는 vector v 생성
    vector v(5) : 0으로 초기화된 5개의 원소를 가지는 vector v 생성
    vector v(5, 2): 2로 초기화된 ~
    vector v2(v1): v1을 복사한 v2를 생성

vector의 함수

  • v.assign(5, 2) : 2값을 가지는 5개 원소 할당
  • v.at(idx) : idx 원소 참조. v[idx]보다 속도는 느리지만 범위를 점검
  • v.front() : 첫번쨰 원소 참조
  • v.back() : 마지막 원소 참조
  • v.clear() : 모든 원소 제거. 메모리는 남아있음.size는 줄어들고 capacity는 그대로
  • v.push_back(7) : 마지막에 원소 7 추가
  • v.pop_back() : 마지막 원소 제거
  • v.begin(), v.end() : iterator와 사용
  • v.insert(2, 3, 4) : 2번째 위치에 3개의 4값을 삽입
  • v.insert(2, 3) : 2번째 위치에 3값 삽입. iterator 반환
  • v.erase(iter) : ex) v.erase(v.begin() + 3)
  • v.size() : v의 길이 반환

    ex)
    vector::iterator iter;
    for(iter = v.begin(); iter != v.end() ; iter++) cout << *iter << " ";

    int num = 5;
    auto it = find(v.begin(), v.end(), num);

0개의 댓글