From 968416e919c86c6e9dd5dc210a77302647d77922 Mon Sep 17 00:00:00 2001 From: heimoshuiyu Date: Thu, 29 Apr 2021 15:24:27 +0800 Subject: [PATCH] week8 format --- week8/quicksort.c | 62 +++++++++++++++++++++++------------------------ week8/quicksort.h | 8 +++--- 2 files changed, 33 insertions(+), 37 deletions(-) diff --git a/week8/quicksort.c b/week8/quicksort.c index 35f2b62..cf32f11 100644 --- a/week8/quicksort.c +++ b/week8/quicksort.c @@ -30,12 +30,12 @@ int main() { end = clock(); _PrintClockInterval(start, end); - if(Check(A1, size_1)){ + if (Check(A1, size_1)) { printf("Checking result... pass\n"); } else { - printf("Checking result... fail\n"); + printf("Checking result... fail\n"); } - + printf("Freeing space of A1\n"); free(A1); A1 = NULL; @@ -58,12 +58,12 @@ int main() { end = clock(); PrintClockInterval(start, end); - if(Check(A2, size_2)){ + if (Check(A2, size_2)) { printf("Checking result... pass\n"); } else { - printf("Checking result... fail\n"); + printf("Checking result... fail\n"); } - + printf("Freeing space of A2\n"); free(A2); A2 = NULL; @@ -73,29 +73,29 @@ int main() { void QuickSort(int *A, int left, int right) { int q; - if (left >= right){ + if (left >= right) { return; } /* q is the position of the pivot */ q = Partition(A, left, right); - QuickSort(A, left, q-1); - QuickSort(A, q+1, right); + QuickSort(A, left, q - 1); + QuickSort(A, q + 1, right); } int Partition(int *A, int left, int right) { /* p is the position of the pivot */ int p; p = Pivot(A, left, right); - /* use i, j, pivot to locate left, right, and pivot */ + /* use i, j, pivot to locate left, right, and pivot */ int i, j, pivot; Swap(A, p, right); - i = left, j = right-1, pivot = A[right]; - while(true){ - while (i=left && A[j]>pivot) + while (j >= left && A[j] > pivot) j--; - if (iA[middle]){ - if(A[middle]>A[right]){ + if (A[left] > A[middle]) { + if (A[middle] > A[right]) { middle = middle; - }else if(A[right]>A[left]) { + } else if (A[right] > A[left]) { middle = left; - }else{ + } else { middle = right; } - }else{ - if(A[middle] #include - -/* Sort array A[left..right] using quick sort */ -/* Pivot is picked using median-of-3 */ +/* Sort array A[left..right] using quick sort + * Pivot is picked using median-of-3 */ void QuickSort(int *A, int left, int right); /* Sort the array in order */ @@ -13,7 +12,7 @@ int Partition(int *A, int left, int right); int Pivot(int *A, int left, int right); /* Swap A[x], A[y] */ -void Swap(int *A, int x,int y); +void Swap(int *A, int x, int y); /* create check functions */ bool Check(int *A, int size); @@ -23,4 +22,3 @@ void PrintClockInterval(clock_t start, clock_t end); /* use this to check small size of data */ void _PrintClockInterval(clock_t start, clock_t end); -