본문 바로가기
프로그래밍 공부흔적/C++

[C++] 해시 문제를 풀 때 쓴 vector STL 정리

by 뷕뺙쀡 2020. 12. 30.

데이터 선언 : vector <데이터 형태> 데이터 이름;

Iterators

begin() : 시작 iterator를 반환
end() : 끝 iterator를 반환

Capacity

size() : 컨테이너 크기 return
resize(a) : vector의 크기를 a로 resize,  resize(a,b)는 a로 resize한 후 b로 채우는 것인데 만약 기존 크기보다 a가 더 크다면 기존의  크기 다음부터 b로 채운다.
empty() : vector이 비었는지 아닌지 bool값으로 return

Modifiers

push_back() : 값을 삽입한다.
pop_back() : 맨 마지막에 들어갔던 값을 pop
insert(a,b) : iterator 형태의 a를 b에 삽입한다.
erase() : 값을 삭제한다
swap(a,b) : 값을 뒤바꾼다.
clear() : 컨테이너를 비운다.

#include <iostream>
#include <vector> //벡터 헤더 추가
using namespace std;

int main()
{
	vector <int> vec; // vector <데이터 형태> 데이터 이름;

	for (int i = 1; i <= 10; i++) vec.push_back(i);
	/* 1 2 3 4 5 6 7 8 9 10 */
	//push_back()은 값을 삽입

	cout << vec.size() << endl; /* 10 */
	//size()은 크기를 반환

	vec.pop_back();  /* 1 2 3 4 5 6 7 8 9 */
	//pop_back()은 맨 마지막에 들어갔던 값을 팝해낸다.

	vec.insert(vec.begin(), 10);  /* 10 1 2 3 4 5 6 7 8 9 */
	//insert(a,특정값) a에 특정값 삽입

	vec.erase(vec.begin(), vec.begin() + 3); /* 3 4 5 6 7 8 9 */
	//erase(a,b)는 a부터 b까지 값을 삭제

	//begin()과 end()은 iterator 형태로 값 반환
	//begin() 함수는 컨테이너의 첫 번째 값의 주소 반환
	//end() 함수는 컨테이너의 맨 마지막이 아닌 그 다음 원소의 주소 반환.
	cout << *vec.begin() << endl; //vec의 처음 값
	cout << *(vec.end()-1) << endl; //vec의 마지막 값

	return 0;
}

참고 출처 : 

www.cplusplus.com/reference/vector/vector/

'프로그래밍 공부흔적 > C++' 카테고리의 다른 글

[C++] 상속  (0) 2021.06.06
[C++] 연산자 오버로딩  (0) 2021.06.06
[C++] 객체와 클래스에 대한 이야기 정리  (0) 2021.04.18
[C++] 배열에 대한 이야기들 정리  (0) 2020.12.02

댓글