Задания № 6, 25 · ЕГЭ

Обмен элементов массива

Как поменять местами два элемента массива без потери данных
2 мин чтенияСложность: Обновлено 29 сентября 2026

Обмен элементов массива — это перестановка значений двух элементов: значение из одной ячейки записывают в другую, а прежнее значение второй ячейки — в первую. Чтобы не потерять одно из значений, используют временную переменную.

Обмен элементов массива
Обмен элементов массива — операция, при которой значения элементов с индексами \(i\) и \(j\) меняются местами, а значения всех остальных элементов остаются прежними. Обычно обмен выполняют в три шага: сохранить первый элемент во временную переменную, записать второй элемент на место первого, затем записать сохранённое значение на место второго.
\[t = a[i],\quad a[i] = a[j],\quad a[j] = t\]

Здесь \(a\) — массив, \(i\) и \(j\) — индексы обмениваемых элементов, а \(t\) — временная переменная. Индексы должны быть допустимыми: например, для массива из \(n\) элементов это обычно \(0 \le i,j < n\) в Python и C++ или \(1 \le i,j \le n\) в Pascal.

Как выполняется обмен

  1. Сохранить значение \(a[i]\) в переменной \(t\).
  2. Записать значение \(a[j]\) в \(a[i]\).
  3. Записать значение \(t\) в \(a[j]\).
№
Пример

Пусть \(a = [4, 7, 2]\), нужно поменять местами элементы с индексами 0 и 2. После выполнения t = a[0], a[0] = a[2], a[2] = t массив станет \([2, 7, 4]\). Фрагмент на Python:

```python
t = a[i]
a[i] = a[j]
a[j] = t
```

Проверь себя

Что получится после обмена элементов с индексами 1 и 3 в массиве \([5, 8, 2, 6]\)?

!
Частая ошибка

Нельзя сразу выполнить a[i] = a[j], а затем попытаться записать a[j] = a[i]: после первой строки исходное значение \(a[i]\) уже потеряно, и оба элемента могут стать равными. В сортировке массива такой обмен часто используется для перестановки элементов, поэтому ошибка может повлиять на весь результат.

Если \(i=j\), обмен ничего не изменит: элемент сначала сохраняется, затем записывается обратно. Повторяя обмены в нужном порядке, можно выполнять сортировку по возрастанию или другие алгоритмы обработки массива.

Главное за минуту

Главное

  • Обмен двух элементов меняет только их значения местами.
  • Надёжный способ — три присваивания с временной переменной.
  • Запись одного значения поверх другого без временного хранения приводит к потере данных.