TGViewer
Сохранёнки программиста Сохранёнки программиста @prog_stuff · 6.53K subscribers
Post #3029 172
Как читать Big O и находить лишнюю сложность в коде

Обстоятельная интерактивная статья объясняет Big O без секундомера: нотация показывает, как растёт время работы вместе с объёмом входа. O(1), O(log n), O(n) и O(n²) разобраны на графиках и примерах JavaScript.

Карта материала:
1. сумма циклом растёт линейно, а формула (n × (n + 1)) / 2 требует постоянного числа операций;
2. пузырьковая сортировка в худшем случае проходит n элементов n раз;
3. бинарный поиск отбрасывает половину вариантов за шаг и находит число среди миллиарда не более чем за 31 попытку.

Практический блок переносит теорию в код. Поиск в массиве имеет O(n), в Set: O(1), но создание new Set(items) требует O(n). Материал пригодится, чтобы оценивать алгоритмы по росту затрат и учитывать цену подготовки вместо единичных замеров.
More from @prog_stuff
  1. Sep 24, 2026Как устроена машина Тьюринга и где проходит граница вычислимого Интерактивная статья ведёт…
  2. Sep 23, 2026Как реализовать get or create в PostgreSQL без гонок и раздувания таблицы Обстоятельный ра…
  3. Sep 23, 2026Как устроен исполняемый файл Linux и как разобрать его вручную Обстоятельная первая часть…
  4. Sep 22, 2026Как одну проверку Clippy ускорили в 3133 раза Казалось бы, проверить скобки в вызовах макр…
  5. Sep 22, 2026Как SQLite обеспечивает атомарный коммит Транзакция выглядит так, будто записалась целиком…
  6. Sep 21, 2026Как выбрать равновероятную выборку из потока неизвестной длины Интерактивный разбор объясн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →