본문 바로가기
tech documents/cpp

2차원 vector row만 초기화하기

by kimtahen 2022. 2. 9.
반응형

서론

알고리즘을 풀다보면, vector에서 row만 초기화하고 col은 push_back을 사용해야 하는 경우가 생긴다.

코드

아래와 같이 첫번째 인자만 할당해주거나 두번째 인자로 vector만 생성해주면 된다.

vector<vector<int>> graph(row);
vector<vector<int>> graph2(row, vector<int>());

아래와 같은 경우에서 사용할 수 있다.

#include <bits/stdc++.h>
using namespace std;

int main(){
    int numCourses = 2;
    vector<vector<int>> prerequisites = {{1,0},{0,1}};
    vector<vector<int>> graph(numCourses);
    for(auto i : prerequisites){
        graph[i[0]].push_back(i[1]);
    }

}

물론 2차원 vector의 row, col 을 모두 할당할 수도 있다. 아래와같이 하면된다.

vector<vector<int>> graph(row, vector<int>(col));
반응형

'tech documents > cpp' 카테고리의 다른 글

배열 초기화  (0) 2022.01.20

댓글