Наибольшая разность

Напишите функцию, которая будет принимать список чисел, сортировать его и возвращать наибольшую разность между соседними числами.

Например, список [9, 4, 26, 26, 0, 0, 5, 20, 6, 25, 5] после сортировки превращается в [0, 0, 4, 5, 5, 6, 9, 20, 25, 26, 26]. Наибольшая разность — 11 — между 9 и 20.

Примеры

largest_gap([9, 4, 26, 26, 0, 0, 5, 20, 6, 25, 5]) ➞ 11
# После сортировки получаем [0, 0, 4, 5, 5, 6, 9, 20, 25, 26, 26]
# Наибольшая разность - 11, между 9 и 20

largest_gap([14, 13, 7, 1, 4, 12, 3, 7, 7, 12, 11, 5, 7]) ➞ 4
# После сортировки получаем [1, 3, 4, 5, 7, 7, 7, 7, 11, 12, 12, 13, 14]
# Наибольшая разность - 4, между 7 и 11

largest_gap([13, 3, 8, 5, 5, 2, 13, 6, 14, 2, 11, 4, 10, 8, 1, 9]) ➞ 2
# После сортировки получаем [1, 2, 2, 3, 4, 5, 5, 6, 8, 8, 9, 10, 11, 13, 13, 14]
# Наибольшая разность - 2, между 6 и 8

Варианты решения

def largest_gap(r):
    return max(y - x for x, y in zip(sorted(r), sorted(r)[1:]))
def largest_gap(lst):
    lst.sort()
    return max(b - a for a, b in zip(lst, lst[1:]))
python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

×