template<typename TP>
void InsertionSort(TP *_arr, int n)
{
cout << "InsertionSort";
tStart = clock();
int i,j;
for (i = 1; i < n; i++)
{
j = i;
while ((j > 0) && (_arr[j-1] > _arr[j]))
{
Swap(_arr[j-1], _arr[j]);
j--;
}
}
tEnd = clock();
cout << " "<<(double)(tEnd-tStart)/CLOCKS_PER_SEC << endl;
}
void InsertionSort(int A[], int n) // this one is better
{
for (int i = 1; i < n; i++)
{
int val = A[i];
int j = i;
while(j > 0 && A[j-1] > val)
{
A[j] = A[j-1];
j--;
}
A[j] = val;
}
}