그외/C++

[c++] vector<vector<int>> (이차원 벡터) 길이

세고래 2021. 6. 13. 04:17

※배워가고 있는 학생입니다. 틀린 부분이 있다면 댓글로 피드백 부탁드려요😁

 

* 이 글은 vector와 vector<vector<int>>의 개념을 알고 있다는 전제 하에 설명이 되어있습니다.

 

이전부터 2차원 vector를 계속 사용해왔지만,

항상 문제를 풀 때 입력받은 int로 row와 column을 설정해왔기에

길이를 구하는 방법은 나도 오늘 처음 알았다! 🙄

 

.size()

결론부터 말하자면, vector 크기를 구할 때 늘 사용해왔던 .size()함수를 이용하면 된다!

 

row: 벡터.size()

column: 벡터[0].size()

 

우리가 알고 있듯, vector<vector<int>>는 vector<int>를 각각의 row에 넣어주는 방식의 2차원 동적배열이다.

그냥 .size()함수를 사용하면 기본적으로 row의 길이만 리턴되지만,

해당 row에 들어있는 값의 개수, 즉 column의 길이는 특정 row 에 .size()를 사용하면 된다.

아래에 예시 코드를 적어놓겠다!

 

	vector<vector<int>>v = { {1,2,3},{4,5,6} };//row: 2 , column: 3
    /*
    {1,2,3}
    {4,5,6}
    */
	cout << v.size() << '\n'; //2 row 크기
	cout << v[0].size() << '\n'; //3 column 크기

 

 

 

728x90

'그외 > C++' 카테고리의 다른 글

[c++] vector 중복원소 제거(sort, unique)  (0) 2021.06.16
[c++] vector<int>v(n) 과 vector<int>v[n]의 차이  (0) 2021.05.26