Professional Documents
Culture Documents
#include <stdlib.h>
#include <stdio.h>
/* Reverses arr[0..i] */
temp = arr[start];
arr[start] = arr[i];
arr[i] = temp;
start++;
i--;
int mi, i;
mi = i;
return mi;
}
// operations
// arr[0..curr_size-1]
if (mi != curr_size-1)
// to beginning
flip(arr, mi);
// current array
flip(arr, curr_size-1);
}
}
int main()
int n = sizeof(arr)/sizeof(arr[0]);
pancakeSort(arr, n);
printArray(arr, n);
return 0;
}
Comb Sort
#include<bits/stdc++.h>
gap = (gap*10)/13;
if (gap < 1)
return 1;
return gap;
// Initialize gap
int gap = n;
// loop runs
gap = getNextGap(gap);
swapped = false;
swap(a[i], a[i+gap]);
swapped = true;
// Driver program
int main()
int n = sizeof(a)/sizeof(a[0]);
combSort(a, n);
return 0;
}
Bubble sort
#include <stdio.h>
*xp = *yp;
*yp = temp;
int i, j;
swap(&arr[j], &arr[j+1]);
int i;
for (i=0; i < size; i++)
printf("n");
int main()
int n = sizeof(arr)/sizeof(arr[0]);
bubbleSort(arr, n);
printArray(arr, n);
return 0;
}
TimSort
#include<bits/stdc++.h>
int j = i - 1;
arr[j+1] = arr[j];
j--;
arr[j+1] = temp;
int i = 0;
int j = 0;
int k = l;
arr[k] = left[i];
i++;
else
arr[k] = right[j];
j++;
k++;
}
arr[k] = left[i];
k++;
i++;
arr[k] = right[j];
k++;
j++;
// arr[mid+1....right]
int main()
int n = sizeof(arr)/sizeof(arr[0]);
printArray(arr, n);
timSort(arr, n);
printArray(arr, n);
return 0;
}
Tree Sort
#include<bits/stdc++.h>
struct Node
int key;
};
temp->key = item;
return temp;
// in arr[]
if (root != NULL)
return node;
insert(root, arr[i]);
// in arr[]
int i = 0;
int main()
int n = sizeof(arr)/sizeof(arr[0]);
treeSort(arr, n);
return 0;
}
counting sort
countSort(arr);