본문 바로가기
Language_/Algorithm

[C++] 2차원 Vector

by 낭람_ 2019. 9. 20.
반응형

[2차원 Vector]


우선 vector를 사용하기 위해서는 vector 헤더파일을 추가해야한다.

#include <vector>


이중 벡터 만들기 (using namespace std;)

vector<vector<int>> arr;


일반 vector 생성자는 배열의 사이즈, 초기값을 쓴다.

vector<int>arr(10,0); //10의 크기를 0으로 초기화


이중 vector도 비슷하게 초기화 하면 된다.

vector<vector<int>>arr(10, vector<int>(10,0); //10의 크기를 vetor<int>(10,0)으로 초기화 즉 세로10, 가로10


이중벡터에 값넣기 (일반 2차원 배열처럼 넣는다.)

#include<vector>
vector<vector<int>> arr(10,vector<int>(10,0));
int value = 1;
for (int i = 0; i < 10; i++)
for (int j = 0; j < 10; j++)
arr[i][j] = value++;


이중벡터 값 출력하기

for (vector<int> vec : arr) {
for (int num : vec) {
cout << num <<" ";
}
cout << endl;
}


동적할당 해제 방법(일반 배열처럼 가로부터 해제하고 세로를 해제한다.) _ 변수 형체만 남고 내용은 정리 된다.

for (int i = 0; i < size; i++)
arr[i].clear();
arr.clear();


여러가지 배열 형태 만들기

//1. n x n
vector<vector<int>>arr(n,vector<int>(n,0);
//2. n x m
vector<vector<int>>arr(n,vector<int>(m,0);


반응형

댓글