Максимальное и минимальное значение – это очень важные информационные характеристики и часто приходится искать как максимальное, так и минимальное значение в массиве. Очевидно, что если нам нужно найти и минимальный, и максимальный элемент массива, то можно сделать это последовательно:
• Найти минимальный элемент с помощью известного алгоритма;
• Найти максимальный элемент с помощью известного алгоритма.

Однако это не очень экономично с точки зрения быстродействия, так как мы будем перебирать весь массив два раза, что не является необходимостью. Поэтому скорректируем ранее приведенный алгоритм для решения задачи одновременного поиска максимума и минимума:
1. Установить счетчик равным 1 (i = 1).
2. Пусть минимум и максимум равны первому исследуемому элементу (min = a1, max = a1).
3. Если исследованы еще не все элементы (i < n), то перейти к шагу 4, иначе алгоритм окончен (минимальный и максимальный элементы равны min и max, соответственно).
4. Перейти к следующему элементу (увеличить i на единицу).
5. Если текущий элемент меньше, чем минимум (ai < min), то присвоить min значение ai, иначе, если текущий элемент больше, чем максимум (ai > max), то присвоить max значение ai.
6. Перейти к шагу 3.

Заметим, что сложность алгоритма одновременного поиска максимума и минимума также линейная и равна 2 · (n – 1) сравнений.