среда, 12 февраля 2014 г.

Сортировка массивов

Методом выбора


Реализация сортировки методом выбора по возрастанию:
int main()
{
    int n;
    int mas[100];
    ....
    int min=0;
    for(int i=0; i<n-1; i++) 
    // i - номер прохода, нумеруем проходы от 0
    {
        min = i;
        for(int j=i; j<n; j++) 
        //поиск минимального элемента в неотсортированной части массива 
        {
            if(mas[j]<mas[min])
               {
                   min = j;
               }
        }
        // меняем местами минимальный элемент и элемент номер i
        swap(mas[i], mas[min]);
    }
    .........
}

Методом пузырька

Смотреть пример
Реализация сортировки пузырьком по возрастанию:
int main()
{
    int n;
    int mas[100];
    cin >> n;
    ........

    for(int i=1; i<n; i++) 
    // i - номер прохода, нумеруем проходы от 1
    {
        // проход по неотсортированной части массива
        for(int j=0; j<n-i; j++) 
        {
            // если пара рядом стоящих элементов неупорядочена - меняем их местами
            if(mas[j]>mas[j+1]) 
               {
                   swap(mas[j], mas[j+1]);
               }
        }
    }
    .........
}

Комментариев нет:

Отправить комментарий