Simple Quick Sort Program in C
Definition
Quicksort (sometimes called partition-exchange sort) is an efficient sorting algorithm, serving as a systematic method for placing the elements of an array in order. Quicksort is a comparison sort, meaning that it can sort items of any type for which a "less-than" relation (formally, a total order) is defined. In efficient implementations it is not a stable sort, meaning that the relative order of equal sort items is not preserved. Quicksort can operate in-place on an array, requiring small additional amounts of memory to perform the sorting.
Simple Quick Sort Program Example
/* Simple Quick Sort Program Using Functions and Array in C*/
/* Data Structure Programs,C Functions and Array Examples */
#include<stdio.h>
#include<conio.h>
#define MAX_SIZE 5
void quick_sort(int, int);
int arr_sort[MAX_SIZE];
int main() {
int i;
printf("Simple Quick Sort Example - Functions and Array\n");
printf("\nEnter %d Elements for Sorting\n", MAX_SIZE);
for (i = 0; i < MAX_SIZE; i++)
scanf("%d", &arr_sort[i]);
printf("\nYour Data :");
for (i = 0; i < MAX_SIZE; i++) {
printf("\t%d", arr_sort[i]);
}
quick_sort(0, MAX_SIZE - 1);
printf("\n\nSorted Data :");
for (i = 0; i < MAX_SIZE; i++) {
printf("\t%d", arr_sort[i]);
}
getch();
}
void quick_sort(int f, int l) {
int i, j, t, p = 0;
if (f < l) {
p = f;
i = f;
j = l;
while (i < j) {
while (arr_sort[i] <= arr_sort[p] && i < l)
i++;
while (arr_sort[j] > arr_sort[p])
j--;
if (i < j) {
t = arr_sort[i];
arr_sort[i] = arr_sort[j];
arr_sort[j] = t;
}
}
t = arr_sort[p];
arr_sort[p] = arr_sort[j];
arr_sort[j] = t;
quick_sort(f, j - 1);
quick_sort(j + 1, l);
}
}
Sample Output:
Simple Quick Sort Example - Functions and Array
Enter 5 Elements for Sorting
56
24
20
17
2
Your Data : 56 24 20 17 2
Sorted Data : 2 17 20 24 56
------------------
(program exited with code: 0)
C Sorting Programs
- Simple Bubble Sort Program in C
- Simple Bubble Sort Program using functions in C
- Simple Insertion Sort Program in C
- Simple Insertion Sort Program using functions in C
- Simple Selection Sort Program in C
- Simple Selection Sort Program using functions in C
- Simple Quick Sort Program in C
- Simple Merge Sort Program in C
- Simple Shell Sort Program in C
- Simple Shell Sort Program using functions in C
- Simple Heap Sort Program in C
Read More Articles
- Use of getch(),getche() and getchar() in C
- Switch Case Statement Example Program In C Programming Language
- C Character Set
- Convert a Floating-point value to an Integer in C
- Data Input and Output gets and puts Example Program In C
- Special Operators In C
- Pointer Representation and Pointer Example Programs
- C Data Input and Data Output
- Simple While Loop Example Program In C Programming Language
- Data Output printf and putchar Example Program In C
- C Introduction
- C Operators
- Storage Classes In C
- C Pointers
- File Management
- C Identifiers
- Loop Control Statements
- Hello World - Simple C Program
- C Array
- Single Character Output Function : putchar()
- C Reserve Words
- C Specific Properties and Implementation
- If else Statement Example Program In C Programming Language
- If Statement Example Program In C Programming Language
- Confusing Array in C ( Array Representation and Initialization )