From f227e420d114e5dec4eed46ac00cf3034210612f Mon Sep 17 00:00:00 2001 From: APOORV MISHRA Date: Fri, 25 Oct 2019 21:58:40 +0530 Subject: [PATCH] FOURTH PULL --- Sorting/Bogosort/C/bogosort.c | 61 ++++++++++---------- Sorting/Insertion Sort/C/insertion_2_for.txt | 36 ++++++++++++ 2 files changed, 65 insertions(+), 32 deletions(-) create mode 100644 Sorting/Insertion Sort/C/insertion_2_for.txt diff --git a/Sorting/Bogosort/C/bogosort.c b/Sorting/Bogosort/C/bogosort.c index c07d1b973..6416e0176 100644 --- a/Sorting/Bogosort/C/bogosort.c +++ b/Sorting/Bogosort/C/bogosort.c @@ -1,40 +1,37 @@ #include #include -#include - -int isSorted(int *v, int size) +#include + +bool is_sorted(int *a, int n) { - int i; - for (i = 0; i < size - 1; i++) - if (v[i] > v[i+1]) - return 0; - return 1; + while ( --n >= 1 ) { + if ( a[n] < a[n-1] ) return false; + } + return true; } - -void bogoSort(int *v, int size) + +void shuffle(int *a, int n) { - int i, aux, r; - while (!isSorted(v, size)) - { - for (i = 0; i < size; i++) - { - r = rand() % size; - aux = v[i]; - v[i] = v[r]; - v[r] = aux; - } - } + int i, t, r; + for(i=0; i < n; i++) { + t = a[i]; + r = rand() % n; + a[i] = a[r]; + a[r] = t; + } } - -int main() + +void bogosort(int *a, int n) { - srand(time(NULL)); - int v[8] = {5, 8, 2, 1, 6, 4, 3, 7}; - - bogoSort(v, 8); - int i; - for (i = 0; i < 8; i++) - printf("%d ", v[i]); - printf("\n"); - return 0; + while ( !is_sorted(a, n) ) shuffle(a, n); } + +int main() +{ + int numbers[] = { 1, 10, 9, 7, 3, 0 }; + int i; + + bogosort(numbers, 6); + for (i=0; i < 6; i++) printf("%d ", numbers[i]); + printf("\n"); +} \ No newline at end of file diff --git a/Sorting/Insertion Sort/C/insertion_2_for.txt b/Sorting/Insertion Sort/C/insertion_2_for.txt new file mode 100644 index 000000000..0e6e1bf98 --- /dev/null +++ b/Sorting/Insertion Sort/C/insertion_2_for.txt @@ -0,0 +1,36 @@ +\\insertion sorting using 2 for loops + +#include +int main() +{ + int arr[100]; + int i,j,a,n,temp; + printf("ENTER THE NUMBER OF ELEMENTS TO BE PRESENT IN ARRAY:\n"); + scanf("%d",&n); + printf("ENTER THE ARRAY:\n"); + for(a=0;a=0&&arr[j]>temp;j--) + { + arr[j+1]=arr[j]; + + } + arr[j+1]=temp; + } + printf("YOUR SORTED ARRAY IS:\n"); + for(a=0;a