Сортировка

#include <iostream> #include <time.h> using namespace std; void inclusionSort(int *num, int size) { for (int i = 1; i < size; i++) { int value = num[i]; int index = i; while ((index > 0) && (num[index - 1] < value)) { num[index] = num[index - 1]; index--; } num[index] = value; } } void selectionSort(int *num, int size) { int min, temp; // для поиска минимального элемента и для обмена for (int i = 0; i < size - 1; i++) { min = i; // запоминаем индекс текущего элемента // ищем минимальный элемент чтобы поместить на место i-ого for (int j = i + 1; j < size; j++) // для остальных элементов после i-ого { if (num[j] < num[min]) // если элемент меньше минимального, min = j; // запоминаем его индекс в min } temp = num[i]; // меняем местами i-ый и минимальный элементы num[i] = num[min]; num[min] = temp; } } int main() { int a[10]; // Объявляем массив из 10 элементов // Вводим значения элементов массива for (int i = 0; i < 10; i++) { printf("a[%d] = ", i); scanf("%d", &a[i]); } selectionSort(a, 10); // вызываем функцию сортировки // Выводим отсортированные элементы массива for (int i = 0; i<10; i++) printf("%d ", a[i]); getchar(); getchar(); return 0; } // Функция сортировки прямым обменом (метод "пузырька") void bubbleSort(int *num, int size) { // Для всех элементов for (int i = 0; i < size - 1; i++) { for (int j = (size - 1); j > i; j--) // для всех элементов после i-ого { if (num[j - 1] > num[j]) // если текущий элемент меньше предыдущего { int temp = num[j - 1]; // меняем их местами num[j - 1] = num[j]; num[j] = temp; } } } } int main() { int *a; int n; cout << "N="; cin >> n; a = new int[n]; srand(time(NULL)); for (int i = 0; i < n; i++) { a[i] = rand() % 201 - 100; } time_t t1 = clock(); inclusionSort(a, n); time_t t2 = clock(); cout << endl; for (int i = 0; i < n; i++) cout << a[i] << " "; cout << endl << t2 - t1; cin.get(); cin.get(); return 0; }

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.