Нахождение положения макс. элемента

Существует ли стандартная функция, которая возвращается, положение (не оценивают) макс. элемента массива значений?

Например:

Предположим, что у меня есть массив как это:

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

Я хочу функцию, которая возвращает целое число 3, который говорит мне это sampleArray[3] самое большое значение в массиве.

68
задан sohnryang 28 February 2017 в 12:55
поделиться

3 ответа

В 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;
}
111
ответ дан 24 November 2019 в 14:13
поделиться

std :: max_element принимает два итератора, ограничивающих последовательность, и возвращает итератор, указывающий на максимальный элемент в этой последовательности. Вы можете дополнительно передать предикат функции, которая определяет порядок элементов.

1
ответ дан 24 November 2019 в 14:13
поделиться

STL имеет функцию max_elements. Вот пример: http://www.cplusplus.com/reference/algorithm/max_element/

0
ответ дан 24 November 2019 в 14:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: