"""
Задание 2.

Реализуйте два алгоритма.

Первый, в виде функции, должен обеспечивать поиск минимального значения для списка.
В основе алгоритма должно быть сравнение каждого числа со всеми другими элементами списка.
Сложность такого алгоритма: O(n^2) - квадратичная.

Второй, в виде функции, должен обеспечивать поиск минимального значения для списка.
Сложность такого алгоритма: O(n) - линейная.


Примечание:
Построить список можно через генератор списка.
Если у вас возникают сложности, постарайтесь подумать как можно решить задачу,
а не писать "мы это не проходили)".
Алгоритмизатор должен развивать мышление, а это прежде всего практика.
А без столкновения со сложностями его не развить.
"""

list = [1, 3, 4, 7, 0, 4, 8,-1, 2]
# ----1

mins = list[0]
for i in list:
    if i < mins:
        mins = i

print("Минимальное значение в списке : " + str(mins))


# ----2
def my_min(list1):
    res = (" Функция. Минимальное значение : ", min(list1, default=0))
    return res


print(my_min(list))
