Рассмотрим массив целых или вещественных чисел a1, a2, …, an . Пусть требуется переставить элементы этого массива так, чтобы после перестановки они были упорядочены по неубыванию a1 £ a2 £ … £ an или по невозрастанию a1 ³ a2 ³ … ³ an . Эта задача называется задачей сортировки или упорядочения массива. Для решения этой задачи можно воспользоваться, например, следующими алгоритмами:
а) Найти элемент массива, имеющий наименьшее (наибольшее) значение, переставить его с первым элементом. Затем проделать то же самое, начав со второго элемента и так далее. (Сортировка выбором)
б) Последовательным просмотром чисел a1, a2, …, an найти наименьшее i такое, что ai> ai+1 или ai< ai+1 . Поменять ai и ai+1 местами, возобновить просмотр с элемента ai+1 и так далее. Тем самым самое наибольшее или наименьшее число передвинется на последнее место. Следующие просмотры следует начинать опять сначала, уменьшая на единицу количество просматриваемых элементов. Массив будет упорядочен после просмотра, в котором участвовали только первый и второй элементы. (Сортировка обменами)
в) Просматривать последовательно a2, …, an и каждый новый элемент вставлять на подходящее место в уже упорядоченную последовательность a1, …, ai-1 . Это место определяется последовательным сравнением ai с упорядоченными элементами a1, …, ai-1 . (Сортировка простыми вставками)
г) Сравнить элементы a1 и a2 и, если a1 > a2 (или a1< a2), то эти элементы переставить. Далее сравнить элементы а2 и а3 и, если а2 > a3 (или а2 < a3), то их переставить. Далее сравнить элементы а3 и а4 и так далее до элементов an-1 и an включительно. Далее эти действия повторить, начиная опять с первого элемента. Последним является контрольный проход, при котором не будет перестановок элементов. (Сортировка по методу пузырька)