C中二维向量的列大小和行大小

新手上路,请多包涵

我有一个这样的向量:

 vector< vector<int> > myVector;

此向量中的所有行号和列号都相同。

我想找到这个向量的行数和列数。

对于行数,我想出了:

 myVector[0].size();

对于列数,我想不出任何东西。你能告诉我我的行数是否正确,你能告诉我如何获得列数吗?谢谢。

原文由 jason 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 846
2 个回答

您有一个整数向量向量 myVector[0].size() 返回二维向量中第一个 int 向量中的元素数量。

这种向量的结构如下所示:

 myVector[
  Vector[0, 4, 2, 5],
  Vector[1, 4, 2]
];

当您调用 myVector[1].size() 时,它将返回 3 而 [0] 将返回 4。

对于 2d 向量中的行数(int 向量),您可以使用 myVector.size()

您可以运行它以在操作中查看它

#include <iostream>
#include <vector>

int main(){
    std::vector<std::vector<int>>MyVector;
    std::vector<int>temp;

    temp.push_back(1);
    temp.push_back(2);
    temp.push_back(3);
    MyVector.push_back(temp);

    std::cout << "Rows in the 2d vector: " << MyVector.size() <<
    std::endl << "Collumns in the 1st row: " << MyVector[0].size() <<
    std::endl;

    system("pause");
    return 0;
}

这是输出:

 Rows in the 2d vector: 1
Collumns in the 1st row: 3

原文由 Kilppari 发布,翻译遵循 CC BY-SA 4.0 许可协议

我认为您的问题是您要输入二维向量的大小以及初始化权!!!

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

int main(){

    vector<vector<int>> adjm(n+1, vector<int> (n+1, 0));

    return 0;
}

这将解决您的问题这就是您输入行和列的邻接矩阵大小的方式

原文由 Abdullah 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏