# Сложность алгоритмов

<figure><img src="/files/TRuq3zBQDDO9H8Oe3gYP" alt=""><figcaption></figcaption></figure>

**Вычислительная сложность** — понятие в информатике и теории алгоритмов, обозначающее функцию зависимости объёма работы, которая выполняется некоторым алгоритмом, от размера входных данных.&#x20;

Обычно у алгоритмов бывает **две сложности**:&#x20;

1. **Временная сложность** — как количество операций, которые выполняются при работе алгоритма, связано с объёмом входных данных.&#x20;
2. **Сложность по памяти** — как количество памяти, которое нужно алгоритму, связано с размером входных данных.&#x20;

**Некоторые виды сложности алгоритмов:**

* **O(n) — линейная сложность**. Такой сложностью обладает, например, алгоритм поиска наибольшего элемента в не отсортированном массиве.&#x20;
* **O(log n) — логарифмическая сложность**. Простейший пример — бинарный поиск.&#x20;
* **O(n2) — квадратичная сложность**. Такую сложность имеет, например, алгоритм сортировки вставками.&#x20;
* **O(1) — время работы алгоритма вообще не зависит от размера входных данных**. Например, для определения значения третьего элемента массива не нужно ни запоминать элементы, ни проходить по ним сколько-то раз.&#x20;

Оценка сложности помогает выбирать оптимальные пути решения задач исходя из текущих условий и требований.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://letas-organization.gitbook.io/letaats-lessons-online/pogrammisty/slozhnost-algoritmov.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
