Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Шпоры по МПиПА / Массивы / Сортировка / Сортировка методом двоичного включения / C / Исходник / binaryInsertionSort
.cpp#include "iostream.h"
#include "stdio.h"
void binaryInsertionSort(int array[], int col){
int i, j, m, L, R;
int item;
for ( i = 1; i < col; i ++ ){
item = array[i];
L = 0;
R = i;
while ( L < R ){
m = (L+R)/2;
if ( array[m] <= item ){
L = m + 1;
}
else {
R = m;
}
}
for ( j = i; j >= R+1; j -- ){
array[j] = array[j-1];
}
array[R] = item;
}
}
void main(){
int i, size;
int *array;
cout << "Binary Insertion Sort.\nEnter array dimension: ";
cin >> size;
array = new int[size];
cout << "Enter " << size << " elements: ";
for ( i = 0; i < size; i ++ ){
cin >> array[i];
}
binaryInsertionSort( array, size );
cout << "Your array after sorting: ";
for ( i = 0; i < size; i ++ ){
cout << array[i] << " ";
}
cout << "\nPress \"Enter\" to continue..." << endl;
getchar();
}