Привіт! В даній статті висвітлюється алгоритм sort з бібліотеки STL C++.
Оголошення даного алгоритму у вигляді функції виглядає наступним чином:
template <class RandomAccessIterator> void sort (RandomAccessIterator begin,
RandomAccessIterator end) ;
Сортує елементи у проміжку [begin,end) в порядку зростання. Для даної версії алгоритму для порівняння елементів використовується оператор "<". Для елементів з еквівалентним значенням не гарантується відносний порядок перед сортуванням. Функція не повертає значень.
Приклад
Розглянемо простий приклад сортування послідовності елементів, які представлені у вигляді масиву вбудованого типу.
#include <iostream> /* об'єкт cout */
#include <algorithm> /* усі алгоритми разом з sort */
using namespace std ; /* друкуєм усе без std */
/* головна функція програми */
int main (int argc, char** argv)
{
/* створюємо піддослідний масив iArray і визначаємо його довжину */
int iArray [] = {1,3,5,2,7,3,87,2,65,2,54,1,7,113,62,67,43} ;
int iLen = sizeof(iArray)/sizeof(iArray[0]) ;
/* виводимо оригінальний порядок на екран */
cout << "Перед сортуванням:" << endl ;
for (int iter=0; iter<iLen; ++iter)
{ cout << iArray[iter] << "; " ; }
cout << endl ;
/* виконуємо сортування за допомогою sort */
sort (iArray, iArray+iLen) ;
/* виводимо відсортований масив */
cout << "Після сортування:" << endl ;
for (int iter=0; iter<iLen; ++iter)
{ cout << iArray[iter] << "; " ; }
cout << endl ;
return 0 ;
}
Після компілювання і виконання програми на екрані з'явиться наступна інформація: