Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Алгоритмы сортирвок

Автор:   •  Апрель 23, 2022  •  Лекция  •  634 Слов (3 Страниц)  •  177 Просмотры

Страница 1 из 3

АЛГОРИТМЫ СОРТИРОВКИ

СОРТИРОВКА-ОБЩАЯ КЛАССИФИКАЦИЯ

1) Оценка алгоритма :

-время;

-память;

-устойчивость (устойчивая сортировка не меняет взаимного расположения равных элементов);

-естественность поведения (эффективность при обработке уже отсортированных или частично отсортированных данных);

-сфера приминения (внутренние и внешние);

Прямые методы:(не самые быстрые, но удобные для объяснения)

1) Сортировка с помощью включения(вставки)

*Используется при игре в карты*

Элементы мысленно делятся на уже готовую последовательность, от нулевого до а итого, и остаток. На каждом шаге, начиная с первого, и увеличивается на единицу из остатка извлекается итый элемент и перекладывается в готовую последовательность, при этом он вставляется на нужное место.

Поиск подходящего места для очередного элемента осуществляется путём последовательных сравнений с элементом стоящим перед ним. В зависимости от результата сравнения элемент либо остается на своем месте(вставка завершена), либо они меняются местами и процесс повторяется.

Таким образом в процессе вставки элемент "просеивается" к началу массива, останавливаясь в случае, когда: 1.найден элемент меньший x; 2.достигнуто начало последовательности.

Алгоритм устойчивый и есстественный.

Алгоритм можно улучшить, объеденив две проверки внутреннего циклав одну, поставив в начало массива специальный барьер. Он должен быть заведомо меньше всех остальных элементов массива.

// отсортировать массив

for (i=1;i < size; i++) {

 x = a[i];

for (j=i-1; a[j] > x; j--)

a[j+1] = a[j];

a[j+1]=x;

}

// вставить backup(барьер) на правильное место

for (j=1;j<size && a[j]<backup;j++)

a[j-1]=a[j];

a[j-1]=backup;

(0xffffffff-минимально возможное число)

2) Сортировка с помощью выделения(прямого выбора):

1. Выбирается минимальный элемент;

2. Он меняется местами с первым элементом;

3. Процесс повторяется с оставшимися н-1 элементами, н-2 элементами и т.д., до тех пор пока не останется один самый большой элемент;

3) Сортировка с помощью обмена (пузырьковая сортировка):

Идея: один шаг сортировки состоит в проходе снизу вверх по массиву. По пути просматриваются пары соседних элементов. Если элементы некоторой пары находятся в "неправильном" порядке, то меняем их местами. После нулевого прохода "вверху" оказывается самый "легкий" элемент. Следующий проход деоается до второго сверху элемента, следовательно второй по величине поднимается на правильную позицию. Делая проходы по все-уменьшающейся нижней части доберемся до последнего элемента. Конец сортировки.

...

Скачать:   txt (8 Kb)   pdf (126.4 Kb)   docx (10.2 Kb)  
Продолжить читать еще 2 страниц(ы) »
Доступно только на Essays.club