void insertionSort( int size, T items[]) { for(int count=1; count < size; ++count) { for(int index = count; (index > 0) && (items[index] < items[index - 1]); --index) { swapItem(items[index-1] , items[index]); } } }
void heapsort(TAsoc a[], int n) { int i, j; j = n; for (i=n/2; i>0; i--) /* BuildHeap */ perc_down(a,i,j); i = 1; for (j=n; j>=2; j--) { swapItem(&a[i],&a[j]); /* DeleteMax */ perc_down(a,i,j-1); } }