Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- void sortSimpleChoice(int *array, int size){
- int i,j,k;
- for(i = 0; i < size - 1; i++){
- for(j = i + 1; j < size; j++){
- if(array[i] > array[j]){
- k = array[j];
- array[j] = array[i];
- array[i] = k;
- }
- }
- }
- }
- void sortSimpleInsertion(int *array, int size){
- int i, j, k;
- for(i = 1; i < size; i++){
- for(j = i; j > 0 && array[j - 1] > array[j]; j--){
- k = array[j - 1];
- array[j - 1] = array[j];
- array[j] = k;
- }
- }
- }
- void view(int *array, int size){
- int i;
- for (i = 0; i < size; i++){
- printf("%d ", array[i]);
- }
- printf("\n");
- }
- int main() {
- int *array1;
- int size = 50000;
- array1 = (int*)malloc(size * sizeof(int));
- int i;
- for(i = 0; i < size; i++){
- array1[i] = 0 + rand() % 1000;
- }
- int *array2;
- array2 = (int*)malloc(size * sizeof(int));
- for (i = 0; i < size; i++){
- array2[i] = array1[i];
- }
- //view(array1, size);
- //view(array2, size);
- time_t t0 = time(0);
- sortSimpleChoice(array1, size);
- time_t t1 = time(0);
- time_t t2 = time(0);
- sortSimpleInsertion(array2, size);
- time_t t3 = time(0);
- double time_1 = difftime(t1, t0);
- double time_2 = difftime(t3, t2);
- printf("Сортировка простым выбором: %f\nСортировка простыми вставками: %lf\n", time_1, time_2);
- //view(array1, size);
- //view(array2, size);
- free(array1);
- free(array2);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement