gpt4 book ai didi

c++ - 比较 vector 中 vector 的大小以获得最大的

转载 作者:行者123 更新时间:2023-11-30 01:17:48 29 4
gpt4 key购买 nike

如何比较存储在 vector 中的 vector 的大小以获得最大的 vector ?

假设我有 5 个不同大小的整数 vector (有些可能大小相同)。实际上,在我的游戏中可能会有几百个整数 vector 。

vector <int> v1;
vector <int> v2;
vector <int> v3;
vector <int> v4;
vector <int> v5;

我有一个 vector 存储上面的 5 个整数 vector

vector <vector <int> > vAllvects; 

我能够算出 vAllvects vector 存储的 5 个 vector 的大小

for(vector < vector < int >  > :: size_type  iter  =  0;  iter  <  vAllvects.size() ; iter++ )
{
cout << " vAllvects[" << iter << "] size is " << vAllvects[iter].size() << endl ;

for(vector < vector < int > > :: size_type x = 0; x < v. Allvects[iter].size() ; x++)
{
}
cout << endl;
}

我需要的是具有最大尺寸的一个或多个 vector 。

如何比较 vAllvects vector 的每个元素中的每个 vector 大小以获得最大大小的一个或多个 vector ?

最佳答案

这种东西通常有标准库算法。在这种情况下,您可以使用 std::max_element使用合适的二元谓词:

auto max_iterator = std::max_element(std::begin(vAllvects),
std::end(vAllvects),
[](const std::vector<int>& lhs,
const std::vector<int>& rhs)
{
return lhs.size() < rhs.size();
});

这里,max_iterator 是最大 vector 的迭代器,如果有多个 vector 具有最大尺寸,则为第一个 vector 的迭代器。

关于c++ - 比较 vector 中 vector 的大小以获得最大的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23602443/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com