Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<time.h>
- #define MAX 50
- void mergeSort(int arr[],int low,int mid,int high);
- void partition(int arr[],int low,int high);
- int quick(int array[20], int f, int l);
- void insertion(int a[], int s);
- int main(){
- int SORT[50],i,n;
- printf("\nEnter the total number of elements: ");
- scanf("%d",&n);
- printf("\nthe elements which to be sort: ");
- for(i=0;i<n;i++)
- {
- SORT[i]= rand() %100;
- printf("%d\t", SORT[i]);
- }
- double total_time;
- clock_t start, end;
- start = clock();//time count starts
- srand(time(NULL));
- //quick(SORT,0,n-1);
- //partition(SORT,0,n-1);
- insertion(SORT,n);
- printf("\nAfter merge sorting elements are: ");
- for(i=0;i<n;i++){
- printf("%d\t ",SORT[i]);
- }
- //printf("\nAfter quick sorting elements are: ");
- //for(i=0;i<n;i++){
- // printf("%d\t ",SORT[i]);
- //}
- printf("\nAfter insertion sorting elements are: ");
- for(i=0;i<n;i++){
- printf("%d\t ",SORT[i]);
- }
- end = clock();//time count stops
- total_time = ((double) (end - start)) / CLK_TCK;//calulate total time
- printf("\nTime taken to print : %f", total_time);
- /* partition(SORT,0,n-1);
- insertion(SORT,n);
- printf("\nAfter merge sorting elements are: ");
- for(i=0;i<n;i++){
- printf("%d\t ",SORT[i]);
- }
- printf("\nAfter quick sorting elements are: ");
- for(i=0;i<n;i++){
- printf("%d\t ",SORT[i]);
- }
- printf("\nAfter insertion sorting elements are: ");
- for(i=0;i<n;i++){
- printf("%d\t ",SORT[i]);
- }
- */
- return 0;
- }
- /*void partition(int arr[],int low,int high){
- int mid;
- if(low<high){
- mid=(low+high)/2;
- partition(arr,low,mid);
- partition(arr,mid+1,high);
- mergeSort(arr,low,mid,high);
- }
- }
- void mergeSort(int arr[],int low,int mid,int high){
- int i,m,k,l,temp[50];
- l=low;
- i=low;
- m=mid+1;
- while((l<=mid)&&(m<=high)){
- if(arr[l]<=arr[m]){
- temp[i]=arr[l];
- l++;
- }
- else{
- temp[i]=arr[m];
- m++;
- }
- i++;
- }
- if(l>mid){
- for(k=m;k<=high;k++){
- temp[i]=arr[k];
- i++;
- }
- }
- else{
- for(k=l;k<=mid;k++){
- temp[i]=arr[k];
- i++;
- }
- }
- for(k=low;k<=high;k++){
- arr[k]=temp[k];
- }
- }
- int quick(int array[20], int f, int l)
- {
- int i,j,temp;
- if(f<l)
- {
- i=f+1;
- j=l;
- while(i<j)
- {
- while(array[i]<array[j])
- {
- i++;
- }
- while(array[j]>array[f])
- {
- j--;
- }
- if(i<j)
- {
- temp=array[i];
- array[i]=array[j];
- array[j]=temp;
- }
- }
- temp=array[f];
- array[f]=array[j];
- array[j]=temp;
- quick(array,f,j-1);
- quick(array,j+1,l);
- }
- }*/
- void insertion(int a[], int s)
- {
- int i,j,x,temp,arr[20];
- for(i=1;i<s;i++){
- temp=a[i];
- j=i-1;
- while((temp<a[j])&&(j>=0)){
- a[j+1]=a[j];
- j=j-1;
- }
- a[j+1]=temp;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement