首页 > 解决方案 > 查找向量中的最大元组

问题描述

标签: c++stl

解决方案


Just replace std::max with std::max_element like that.

std::vector<std::tuple<int, double, double>> v;
v.emplace_back(0, 5.0, 7.0);
v.emplace_back(1, 8.5, 4.5);
v.emplace_back(2, 11.2, 3.8);

auto result = std::max_element(v.begin(), v.end(),
                               [](const std::tuple<int, double, double> &x,
                                  const std::tuple<int, double, double> &y) {
                                   return std::get<2>(x) < std::get<2>(y);
                               });

推荐阅读