Skip to content

Instantly share code, notes, and snippets.

@triklozoid
Last active August 15, 2017 20:58
Show Gist options
  • Select an option

  • Save triklozoid/7518241 to your computer and use it in GitHub Desktop.

Select an option

Save triklozoid/7518241 to your computer and use it in GitHub Desktop.
О большое для чайников
Это <s>перевод</s> вольный пересказ статьи [Baron Schwartz](https://vividcortex.com/blog/2013/10/23/big-o-notation-made-simple/)
Если вы занимаетесь программированием или чем-то похожим в IT, вы наверняка знакомы с понятием "О большое". Это основа вашего понимания сложности задачи или алгоритма. Большиство разъяснений О большего слишком [усложняют](http://ru.wikipedia.org/wiki/%C2%ABO%C2%BB_%D0%B1%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B5_%D0%B8_%C2%ABo%C2%BB_%D0%BC%D0%B0%D0%BB%D0%BE%D0%B5) это достаточно простое понятие, делая его недоступным для широкой аудитории, котороя нуждается в базовом словаре и понимании важной концепции.
### Ломаем стереотипы о О большом.
Важно помнить, что "О большое" это просто распространённый и понятный каждому способ говорить о сложности алгоритмов и задач. "О" показывает порядок сложности, на естественном языке это может быть записано как "затраты на выполнение этого алгоритма - Х". Более формальная запись - О(Х). Теперь посмотрим, что скрывается под X.
### Размер задачи.
"О большое" нужно для понимания зависимости от размера задачи, которую вы собираетесь решать. Классический пример это сортировка массива чисел. "О большое" показывает насколько эффективен алгоритм в зависитмости от длины списка.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment