Вопросы к Поиску с Алисой
Разница между линейной и квадратичной временной сложностью заключается в характере роста времени выполнения алгоритма с увеличением размера входных данных. proglib.io javarush.com
Линейная временная сложность (O(n)) означает, что время выполнения алгоритма растёт линейно с увеличением размера входных данных. proglib.io javarush.com Другими словами, удвоение размера входных данных удвоит и необходимое время для выполнения алгоритма. bimlibik.github.io Такие алгоритмы обычно встречаются в тех, которые перебирают каждый элемент входных данных. dzen.ru Пример: поиск максимального элемента в несортированном массиве. dzen.ru
Квадратичная временная сложность (O(n^2)) означает, что время выполнения алгоритма растёт пропорционально квадрату размера входных данных. proglib.io javarush.com Если размер входных данных удваивается, время выполнения алгоритма увеличится в четыре раза. proglib.io Например, при увеличении данных в 10 раз, количество операций (и время выполнения) увеличится примерно в 100 раз. bimlibik.github.io Такие алгоритмы часто встречаются в алгоритмах с вложенными циклами, когда каждый элемент первого списка обрабатывается с каждым элементом второго списка. habr.com Пример: пузырьковая сортировка. dzen.ru