Tiny Bunny
본문 바로가기
💻/C++

[c++] vector 정리

by soonybutter 2024. 2. 18.
728x90

[ 목차 ]

1. vector의 기본 틀과 특징

2. vector 멤버 함수들 정리

3. 2차원 vector

 

 

1.  vector의 기본 틀과 특징

 

vector<[data type]>[변수이름]
ex) vector<int> v ;  
 vector<char>v;
vector<bool>v;

ex) vector<int>v(5) = {1,2,3,4,5};

 

 

 

  • vector은 자동으로 메모리가 할당되는 배열이다. (배열 중에서 짱 쎈 배열 ! )
  • 맨 뒤쪽에서 삽입과 삭제가 가능함.  ->  "v.push_back()"  "v.pop_back()"  함수를 사용함.
  • #include <vector> 헤더파일을 추가해야함.
  • vector은  변수 크기만큼 할당 할 수 있음.

ex) int num1;

cin>> num1;

 

* int arr[num]= {0};     -> 오류

vector<int> v(num);    -> 가능

 

 

 

 

2.  vector 멤버 함수들 정리

 

 

 

2-1.   v.clear();

  • 사이즈, 벡터자체를 클리어함. 즉 모든 원소를 제거함.
  • 메모리는 남아있음. 

2-2.   v.push_back();

  • 비어있는 마지막 원소 뒤에 원소를 삽입함.  '뒤에서부터 밀어넣는다.'

ex) v.push_back(5);

v.push_back(2);

5
[0]
2
[1]
...

 

2-3.   v.pop_back();

  • 마지막 원소를 지운다.

ex) v.pop_back();

5
[0]
2
[1]
...

 

 

2-4.  v.erase(첫번째 주소, 마지막 주소);

  • 특정 값을 지움.

2-5.  v.insert(2,3,4);

  • 2번째 위치에 3개의 4값을 삽입함.

2-6.  v.insert(2,3);

  • 2번째 위치에 3의 값을 삽입함.
  • 삽입한 곳의 iterator을 반환함.

2-7.  sort 함수

sort(v.begin(), v.end());   // vector 의 경우
sort(arr, arr+10);             // 배열의 경우(배열의 크기가 10일때)
  • 사용 시에 헤더에   #include <algorithm> 추가해야함.

 

 

 

 

3.  2차원 vector

 

vector <vector<int>> v;

 

 

ex) vector<vector<int>> v(5);

v[0].push_back(1);

v[0].push_back(2);

v[3].push_back(5);

1, 2
 
5
 
 

 

  • 둘다 크기를 지정 할 경우 
vector<vector<int>> v<5,vector<int>(5));

vector<int>v;

for(int i=0; i<5; i++)
{
  v.push_back(i);
}
for(int i=0; i<v.size(); i++)
{
  cout<<v[i]<< " ";
}

 

 

+to be continued..

728x90

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

[c++] 반올림 / 올림 / 내림 함수  (0) 2024.04.11
[c++] DFS 깊이 우선 탐색 , 재귀함수  (0) 2024.04.02
[c++] DAT  (0) 2024.03.21
[c++] insert함수/ erase함수/ sort함수/ swap함수  (0) 2024.03.21
[c++] 변수와 포인터 (pointer)  (0) 2024.02.18

TOP

Designed by 티스토리