代码
#include <iostream>
#include <cstdlib>
#include <ctime>
#define SIZE 20
using namespace std;
template<typename T>
void bubbleSort(T* A,int lo,int hi)
{
cout<<"\n经过冒泡排序\n";
bool sorted=false;
int j=hi;int count=0;
while(!sorted)
{
count++;
sorted=true;
for(int i=1;i<j;i++)
{
if(A[i-1]>A[i])
{swap(A[i-1],A[i]);sorted=false;}
}
j--;
}
for(int k=lo;k<hi;k++)cout<<A[k]<<" ";cout<<endl;
}
int main()
{
clock_t start,finish;
int A[SIZE]={0};int i=SIZE;
cout<<"原数组\n";
while(i--)
{
A[i]=rand()%SIZE;
cout<<A[i]<<" ";
}
cout<<endl;
start=clock();
bubbleSort(A,0,SIZE);
finish=clock();
cout<<"运行冒泡排序的时间为"<<(double)(finish-start)/CLOCKS_PER_SEC<<"秒\n";
return 0;
}