동적 배열 <vector>와 range-based-for문

cirtuare·2022년 1월 23일
0
post-thumbnail

정올 #4698 #4699 #4700 참고

벡터(vector)

  • 동적 배열
  • 크기를 조정할 수 있다.
  • vector 헤더
#include <stdio.h>
#include <vector>
#include <algorithm>

using namespace std;

vector<int> v; //크기 0인 벡터 선언
vector<int> v1[10]; //크기 0인 벡터 10개 선언 (2차원 배열이라 생각)
vector<int> v2(10); // 크기 10인 벡터 선언
vector<int> v3(10, 1); //크기 10, 모든 값 1로 초기화한 벡터 선언

v.push_back(element); //벡터 맨 뒤에 element 추가, size +1
v.pop_back(); //벡터 맨 뒤 element 삭제, size -1
v.empty(); //비어있는 벡터면 true 리턴
if(!v.empty()) v.pop_back(); //이렇게 주로 사용
v.size(); //벡터의 크기 리턴 (<-> v.sizeof() )
sort(v.begin(), v.end()); //오름차순 정렬
sort(v.begin(), v.end(), greater<int>()); //내림차순 정렬, iostream 헤더 필요
v.front(); // 벡터의 맨 앞 값 리턴
v.back(); // 벡터의 맨 뒤 값 리턴

ranged-based-for문

  • 인덱스를 이용해 for문을 돌리는 일반적인 for문과 달리 인덱스에 관심 x
  • arr의 element에만 관심
  • 파이썬에서 for(element in arr) 와 같은 의미의 구문
  • arr의 크기를 모를 때 유용
//ranged-based-for문

for(int x: v) printf("%d", &x);
for(int x: v) printf("%d", x);

0개의 댓글