C++ Программа для поиска самого большого элемента в массиве
Учитывая массив arr размера N , задача состоит в том, чтобы найти самый большой элемент в данном массиве.
Пример:
Input: arr[] = {10, 20, 4}
Output: 20Input : arr[] = {20, 10, 20, 4, 100}
Output : 100
Подход 1 — Линейный обход. Один из самых простых и основных подходов к решению этой проблемы — просто пройтись по всему списку и найти среди них максимум.
Выполните следующие шаги, чтобы реализовать эту идею:
- Создайте локальную переменную max для хранения максимума в списке
- Сначала инициализируйте max первым элементом , чтобы начать сравнение.
- Затем пройдите по данному массиву от второго элемента до конца и для каждого элемента:
- Сравните текущий элемент с максимальным
- Если текущий элемент больше, чем max, то замените значение max текущим элементом.
- В конце верните и напечатайте значение наибольшего элемента массива, хранящегося в max .
Ниже приведена реализация вышеуказанного подхода:
Временная сложность: O(N), чтобы полностью пройти массив.
Вспомогательное пространство: O(1), так как создается только дополнительная переменная, которая займет O(1) пространство.
Подход 2: использование библиотечной функции. Большинство языков имеют соответствующую встроенную функцию типа max() для поиска максимального элемента, например std::max_element в C++. Мы можем использовать эту функцию, чтобы напрямую найти максимальный элемент.
Ниже приведена реализация вышеуказанного подхода:
Временная сложность: O(N), так как встроенная функция max_element() занимает O(N) времени.
Вспомогательное пространство: O(1), так как создается только дополнительная переменная, которая займет O(1) пространство.