Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Опис алгоритму сортування проста вставка




 

Основна ідея алгоритму полягаяє в тому що послідовно вибирати елементи з не відсортованого масиву та вставляти їх на свої місця в відсортований масив.

 

Нехай заданий числовий масив m={m0 ,m1, m2,….,mn}.

Для формування відсортованої послідовності створюється масив r такої ж розмірності , як і масив m. Елемент m0 масиву m поміщається у нульовому коміру масиву r : r0=m0. Індекс k останнього елемента в масиві r встановлюється до нуля : k=0.

Далі з масиву m до його вичерпання ітераційно вибираються елементи mi (i=1,…,n) починаючи з елемента з індексом i=1; для кожного вибраного елемента mi в ході однієї ітерації з номером і реалізуються наступні кроки.

Крок 1. Пошук місцезнаходження вибраного елемента. Для елемента mi ітераційно (j=0,…,k,) починаючи з j=0 шукається місце j вставки в відсортований масив r :

 

1.1 якщо mi < ri , тоді місце вставного елементу mi комірка вихід з циклу ;

1.2 інакше j=j+1:

якщо j≤k перехід на крок 1.1;

інакше - вихід з циклу.

 

Місце вставки j елементу mi знайдено.

 

Крок 2. Зсув. Якщо на кроці 1 місце вставки в середині циклу не знайшли (j=k+1), отже це місце останнім елементом масиву r, крок 2

виконувати не потрібно,а потрібно тільки тільки вставити елемент на своє місце. Інакше елементи масиву r з індексами j,…,k ітераційно (p=k,…,j), починаючи з найбільшого елемента rp, p=k, переміщуються на одну позицію вправо :

 

2.1 записуємо rp+1=rp

 

2.2 припустимо p=p-1

 

якщо p≥j, перехід на крок 2.1;

 

інакше – вихід з циклу.

 

Крок 3. Вставка. Елемент mi вставляєься на своє місце : rj=mi; індекс останнього елемента у відсотковому масиві r збільшується на одиницю,

k=k+1.

 

Крок 4. Завершення. Припускаємо i=i+1 i: якщо i ≤ n перехід на крок, 1

 

Інакше сортування завершене, вихід.

 

 

 

 



Поделиться:

Дата добавления: 2015-08-05; просмотров: 99; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты