작성
·
35
답변 2
0
안녕하세요 창완님 ㅎㅎ
vector<vector<int>> b 와 vector<pair<int,int>> b의 차이가 뭔가요!??!?
-> 만약 이차원배열로 담아야 한다면 전자로 하시면 되구요. 1차원 배열인데 그 안에 2개의 요소만을 담는다고 하면 후자를 쓰면 됩니다.(즉 3개이상의 데이터를 담는다면 전자를 사용하는 것을 생각할 수 있습니다.)
참고로 이에 대한 부분은 아래의 인턴이 잘 설명드린 것 같아요 ㅎㅎ 참고부탁드립니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
안창완님, 수업 중에 헷갈리셨을 법한 부분에 대해 질문 주셔서 감사합니다. vector<vector<int>>
와 vector<pair<int,int>>
의 차이에 대해 설명드리겠습니다.
vector<vector<int>>
: 이는 2차원 벡터라고 부르며, 각각의 원소가 또 다른 vector<int>
입니다. 쉽게 말해서, 각 행이 벡터로 구성된 배열로 이해하시면 됩니다.vector<pair<int,int>>
: 이는 각각의 원소가 pair<int, int>
, 즉 두 개의 정수 쌍인 벡터입니다. 첫 번째 정수와 두 번째 정수를 한 쌍으로 저장합니다.#include <iostream>
#include <vector>
using namespace std;
int main() {
// 2차원 벡터
vector<vector<int>> matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
for (const auto &row : matrix) {
for (int val : row) {
cout << val << " ";
}
cout << endl;
}
// 벡터 안의 pair
vector<pair<int, int>> pairs = {{1, 2}, {3, 4}, {5, 6}};
for (const auto &p : pairs) {
cout << "(" << p.first << ", " << p.second << ")" << endl;
}
return 0;
}
이 코드는 vector<vector<int>>
와 vector<pair<int,int>>
의 차이를 분명히 보여줍니다. matrix
라는 이름의 2차원 벡터는 각 원소가 다시 vector<int>
인 반면, pairs
벡터는 각 원소가 pair<int, int>
입니다.
더 이해를 돕기 위해 유사한 질문에 대한 지식공유자님의 답변을 포함한 게시물 링크를 첨부합니다:
- 형, 이거 무슨 차이인지 모르겠어요
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.