Форум сайта python.su
Здравствуйте, я только начала изучать Python и столкнулась с вот такой сложно для меня задачей:
Написать функцию которая в качестве аргумента принимает словарь, в котором в качестве ключей — числа int, а в качестве значений — либо словарь, с такой же структурой, либо None. Функция должна вернуть максимально большое число находящееся в этой структуре на произвольной глубине.
Напишите два решения этой задачи - одно с использованием рекурсии, другое - без использования рекурсии
Я смогла только написать функцию для простого словаря, а вот для словаря в словаре нужна помощь, спасибо!
Моё решение:
def max_key_in_dict(a): b = max(list(a.keys())) return b a = { 1: None, 100: None, #30: { #42: None, #1000: None #} } print(a)
Офлайн
def max_key_in_dict(a): keys = [] for i in a: if a[i] is not None: keys.append(max_key_in_dict(a[i])) else: keys.append(i) return max(keys) print(max_key_in_dict(a))
Онлайн
xam1816Большое спасибо!
Отредактировано swarmone (Март 11, 2021 01:23:40)
Офлайн