Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void bubblesort( int tab[], int size )
- {
- for( int i = 0; i < size; i++ )
- {
- for( int j = 0; j < size - 1; j++ )
- {
- if( tab[ j ] > tab[ j + 1 ] )
- swap( tab[ j ], tab[ j + 1 ] );
- }
- }
- }
- void insertion( int tab[], int size )
- {
- int temp, j;
- for( int i = 1; i < size; i++ )
- {
- temp = tab[ i ];
- for( j = i - 1; j >= 0 && tab[ j ] > temp; j-- )
- tab[ j + 1 ] = tab[ j ];
- tab[ j + 1 ] = temp;
- }
- }
- //heapy
- void heapify (int *tab, int heap_size, int i)
- {
- int largest, temp;
- int l=2*i, r=(2*i)+1;
- if (l<=heap_size && tab[l]>tab[i])
- largest=l;
- else largest=i;
- if (r<=heap_size && tab[r]>tab[largest])
- largest=r;
- if (largest!=i)
- {
- temp=tab[largest];
- tab[largest]=tab[i];
- tab[i]=temp;
- heapify(tab,heap_size,largest);
- }
- }
- void budKopiec(int *tab, int rozmiar)
- {
- for (int i=rozmiar/2;i>0;i--)
- heapify(tab,rozmiar, i);
- }
- void heapy(int *tab, int rozmiar)
- {
- int temp;
- budKopiec(tab, rozmiar);
- for (int i=rozmiar;i>1;i--)
- {
- temp=tab[i];
- tab[i]=tab[1];
- tab[1]=temp;
- rozmiar--;
- heapify(tab,rozmiar,1);
- }
- }
- void merge(int tab[],int t[], int pocz, int sr, int kon)
- {
- int i,j,q;
- for (i=pocz; i<=kon; i++) t[i]=tab[i];
- i=pocz; j=sr+1; q=pocz;
- while (i<=sr && j<=kon)
- {
- if (t[i]<t[j])
- tab[q++]=t[i++];
- else
- tab[q++]=t[j++];
- }
- while (i<=sr) tab[q++]=t[i++];
- }
- void mergesort(int A[],int t[], int a, int b)
- {
- int c;
- if(a < b)
- {
- c=(a+b)/2;
- mergesort(A, t, a, c);
- mergesort(A, t, c+1, b);
- merge(A, t, a, c, b);
- }
- }
- void QuickSort(int a[],int start,int end) {
- int q=HoarePartition(a,start,end);
- if (end<=start) return;
- QuickSort(a,q+1,end);
- QuickSort(a,start,q);
- }
- int HoarePartition (int a[],int p, int r) {
- int x=a[p],i=p-1,j=r;
- while (1) {
- do j--; while (a[j] > x);
- do i++; while (a[i] < x);
- if (i < j)
- swap(&a[i],&a[j]);
- else
- return j;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement