Функция, возвращающая наибольшее значение из списка

Используйте max(numbers, default=None). Встроенная функция вернёт наибольшее значение за один проход, а для пустого списка — явно заданный None без исключения.

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

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

Используйте max(numbers, default=None). Встроенная функция вернёт наибольшее значение за один проход, а для пустого списка — явно заданный None без исключения.

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

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

Условие

Реализуйте функцию, которая принимает список чисел и возвращает максимальное из них. Если список пустой, функция должна вернуть None.

Ответ

Используйте max(numbers, default=None). Встроенная функция вернёт наибольшее значение за один проход, а для пустого списка — явно заданный None без исключения.

Реализация:

def find_maximum(numbers):
    return max(numbers, default=None)

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

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

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

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

Подробнее