Поиск наибольшего элемента в массиве

Проверьте, что массив непустой, затем храните максимум просмотренной части, начиная с arr[0]. Один проход находит результат без сортировки и изменения массива.

Короткий ответ

Что ответить на собеседовании

Проверьте, что массив непустой, затем храните максимум просмотренной части, начиная с arr[0]. Один проход находит результат без сортировки и изменения массива.

Подробный разбор

Ответ с пояснениями

Условие

Реализуйте функцию findMaximum, которая возвращает самое большое число из переданного массива целых значений. При решении нельзя прибегать к Stream API, сортировкам или внешним библиотекам — используйте только базовые возможности Java.

private static int findMaximum(int[] arr) {
    //Implement logic to return the maximum element of an array
    return 0;
}

Ответ

Проверьте, что массив непустой, затем храните максимум просмотренной части, начиная с arr[0]. Один проход находит результат без сортировки и изменения массива.

private static int findMaximum(int[] arr) {
    if (arr == null || arr.length == 0)
        throw new IllegalArgumentException("Array is empty");
    int maximum = arr[0];
    for (int i = 1; i < arr.length; i++) {
        if (arr[i] > maximum) maximum = arr[i];
    }
    return maximum;
}

Время O(n), дополнительная память O(1). Начальное значение 0 было бы неверным для [-8, -3, -5]: правильный максимум -3. Проверить каждый элемент необходимо, поскольку любой из них может оказаться наибольшим.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее