"""
Задание 2.
Реализуйте два алгоритма.
Первый, в виде функции, должен обеспечивать поиск минимального значения для списка.
В основе алгоритма должно быть сравнение каждого числа со всеми другими элементами списка.
Сложность такого алгоритма: O(n^2) - квадратичная.
Второй, в виде функции, должен обеспечивать поиск минимального значения для списка.
Сложность такого алгоритма: O(n) - линейная.
Не забудьте указать где какая сложность.
Примечание:
Построить список можно через списковое включение.
Если у вас возникают сложности, постарайтесь подумать как можно решить задачу,
а не писать "мы это не проходили)".
Алгоритмизатор должен развивать мышление, а это прежде всего практика.
А без столкновения со сложностями его не развить.
"""
# Квадратичная сложность
def alg_1 (lst_obj):

    l_list_obj = list(lst_obj)
    l_first = l_list_obj[1]
    for idx in range(len(l_list_obj)):
        for idx1 in idx:
            if l_first < l_list_obj[idx]:
               l_first = l_list_obj[idx]
    return l_first

# Линейная сложность
def alg_2 (lst_obj):

    l_list_obj = list(lst_obj)
    l_first = l_list_obj[1]
    for idx in range(len(l_list_obj)):
        if l_first < l_list_obj[idx]:
            l_first = l_list_obj[idx]
    return l_first
