From c6bc541ab58363d783e60a007e80e9bf9e231fda Mon Sep 17 00:00:00 2001 From: garhve Date: Mon, 5 Dec 2022 19:43:39 +0800 Subject: initialize --- c/dataStructure/sorting/bubbleSort.c | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 c/dataStructure/sorting/bubbleSort.c (limited to 'c/dataStructure/sorting/bubbleSort.c') diff --git a/c/dataStructure/sorting/bubbleSort.c b/c/dataStructure/sorting/bubbleSort.c new file mode 100755 index 0000000..521a781 --- /dev/null +++ b/c/dataStructure/sorting/bubbleSort.c @@ -0,0 +1,47 @@ +#include +#include +#include + +#define SIZE 10 + +void swap(int * a, int * b) +{ + int tmp = *a; + *a = *b; + *b = tmp; +} + +void generateRandom(int * arr, int n) +{ + time_t sr; + srand(sr); + + for (int i = 0; i < n; i++) + arr[i] = rand() % 100; +} + +void bubbleSort(int * arr, int n) +{ + for (int i = 0; i < n; i++) + for (int j = 0; j < n - 1 - i; j++) + if (arr[j] > arr[j+1]) + swap(&arr[j],&arr[j+1]); +} + +int main(void) +{ + int arr[SIZE]; + generateRandom(arr,SIZE); + + for (int i = 0; i < SIZE; i++) + printf("%3d",arr[i]); + putchar('\n'); + + bubbleSort(arr,SIZE); + + for (int i = 0; i < SIZE; i++) + printf("%3d",arr[i]); + putchar('\n'); + + return 0; +} -- cgit v1.2.3-70-g09d2