Стандартные алгоритмы
| English | Русский |
|---|---|
| linear search/ˈlɪnɪə sɜːtʃ/ | линейный поиск |
| bubble sort/ˈbʌbl sɔːt/ | пузырьковая сортировка |
| counting/ˈkaʊntɪŋ/ | подсчет |
| totalling/ˈtəʊtəlɪŋ/ | суммирование |
Классические шаблоны
- Некоторые стандартные алгоритмы встречаются снова и снова.
- Вы должны знать линейный поиск, пузырьковую сортировку и паттерны подсчета/суммирования.
- Каждый из них короткий, но важно уметь узнавать их мгновенно.
Линейный поиск
DECLARE Found : BOOLEAN
Found ← FALSE
FOR I ← 1 TO 10
IF List[I] = SearchValue
THEN
Found ← TRUE
ENDIF
NEXT I
OUTPUT Found
- Линейный поиск последовательно проверяет каждый элемент, начиная с первого, пока не найдет нужное значение (или не дойдет до конца списка).
- Он работает с любым списком — предварительная сортировка не требуется.

Блок-схема для алгоритма суммирования, использующая стандартные символы (начало/конец, ввод/вывод, процесс, решение).
Стандартные алгоритмы
сравнивают соседние элементы, меняют местами при необходимости
Пройдите через пузырьковую сортировку — сравнивайте соседние элементы и меняйте их местами, пока всё не будет упорядочено.
Линейный поиск находит значение путём:
Линейный поиск рассматривает элементы по одному, пока не найдет значение или не достигнет конца.
Сортировка пузырьком
FOR I ← 0 TO 8
IF List[I] > List[I + 1]
THEN
Temp ← List[I]
List[I] ← List[I + 1]
List[I + 1] ← Temp
ENDIF
NEXT I
- Пузырьковая сортировка сравнивает каждую соседнюю пару элементов и меняет их местами, если они расположены неправильно.
- Она повторяет этот процесс до тех пор, пока не потребуются дальнейшие обмены — в результате список оказывается отсортированным.

Пузырьковая сортировка сравнивает каждую соседнюю пару и меняет их местами при необходимости, повторяя до полной сортировки.
Пузырьковая сортировка упорядочивает список путем:
Она меняет местами соседние элементы, нарушающие порядок, и повторяет проходы, пока обмены больше не нужны.
Суммирование, подсчет, максимум/минимум/среднее
- Суммирование — ведение накопительного итога:
Total ← Total + Value. - Подсчет — прибавление 1 каждый раз, когда происходит событие:
Count ← Count + 1. - Максимум/минимум — хранение наибольшего/наименьшего значения, встреченного на данный момент.
- Среднее — деление суммы на количество значений.
Какая строка добавляет значение к накопленной сумме?
total ← total + value накапливает сумму; count ← count + 1 подсчитывает количество occurrences.
Сопоставьте каждый стандартный алгоритм с тем, как он работает.
Эти четыре — поиск, сортировка, накопление суммы и максимум — являются строительными блоками большинства экзаменационных алгоритмов.
Используя накопление суммы для списка [2, 4, 6, 8], какова итоговая сумма?
2 + 4 + 6 + 8 = 20.
Вы поняли
- линейный поиск последовательно проверяет каждый элемент (работает с любым списком)
- пузырьковая сортировка меняет местами несоответствующие соседи, повторяя до сортировки
- суммирование (
Total ← Total + Value) и подсчет (Count ← Count + 1) - max/min = хранить лучшее на данный момент; average = сумма ÷ количество