找到最大元素的位置

新手上路,请多包涵

是否有标准函数返回值数组的最大元素的位置(不是值)?

例如:

假设我有一个这样的数组:

 sampleArray = [1, 5, 2, 9, 4, 6, 3]

我想要一个返回整数 3 的函数,它告诉我 sampleArray[3] 是数组中的最大值。

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

阅读 460
2 个回答

在 STL 中, std::max_element 提供了迭代器(如果你真的想要的话,它可以用来获取索引 std::distance )。

 int main(int argc, char** argv) {
  int A[4] = {0, 2, 3, 1};
  const int N = sizeof(A) / sizeof(int);

  cout << "Index of max element: "
       << distance(A, max_element(A, A + N))
       << endl;

  return 0;
}

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

cout<<max_element(arr.begin(), arr.end()) - arr.begin();

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

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