자료구조란 데이터들관의 관계, 함수, 명령 등의 집합을 의미하며 데이터에 대해 효율적으로 접근, 수정 등 데이터의 처리를 효율적으로 할 수 있게 만든 구조를 의미한다.
vector
vector는 동적으로 요소를 할당할 수 있는 동적 배열이다.
vector<타입> 변수명;
C++
복사
#include <iostream>
#include <string>
#include <array>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
vector<int> v;
for (int i = 0; i < 10; i++) v.push_back(i);
for (int a : v) cout << a << " ";
cout << '\n';
v.pop_back();
for (int a : v) cout << a << " ";
cout << '\n';
v.erase(v.begin(), v.begin() + 3);
for (int a : v) cout << a << " ";
cout << '\n';
auto a = find(v.begin(), v.end(), 100);
if (a == v.end()) cout << "not found" << '\n';
fill(v.begin(), v.end(), 10);
for (int a : v) cout << a << " ";
cout << '\n';
v.clear();
for (int a : v) cout << a << " ";
return 0;
}
C++
복사
push_back()
vector의 뒤에서부터 요소를 더하기
pop_back()
vector의 맨 뒤의 요소를 지우기
erase()
erase로 한 요소만을 지운다면 erase(위치)로 쓰이지만 [from, to)로 지우고 싶다면 erase[from, to) 로 지운다.