⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shiyan4.cpp

📁 计算一段程序运行的时间
💻 CPP
字号:
#include<cstdlib>
//#include<stdio.h>
//#include<stdlib.h>
#include<iostream>
#include<time.h>
using namespace std;
int const N=1000;
int const m=1000;

//产生N个随机数
void suijishu(int a[],int b[])
{   
	int i;
	cout<<"产生随机数的个数"<<N<<endl;
	srand((unsigned)time(NULL));
	for(i=0;i<N;i++)
	a[i]=b[i]=rand()%1000;
}

//冒泡排序法
void maopao(int a[])
{
	int i,j,t;
	for(i=0;i<N-1;i++)
		for(j=i+1;j<N;j++)
			if(a[i]>a[j])
			{
				t=a[i];
				a[i]=a[j];
				a[j]=t;
			}
}

//快速排序法
void kuaisu(int data[], int low, int high) 
{ 

	
int i, j, pivot; 
if (low < high) 
{ 
pivot=data[low]; 
i=low; 
j=high; 

while(i<j) 
{ 
while (i<j && data[j]>=pivot) 
j--; 
if(i<j) 
data[i++]=data[j]; 

while (i<j && data[i]<=pivot) 
i++; 
if(i<j) 
data[j--]=data[i]; 
} 

data[i]=pivot; 

kuaisu(data,low,i-1); 
kuaisu(data,i+1,high); 
} 
}


//主程序
void main()
{   
	clock_t t1,t2,t3,t4;
	int a[N],b[N],i;
	suijishu(a,b);
cout<<"产生的随机数:"<<endl;
	for(i=0;i<N;i++)
        cout<<a[i]<<" ";
	cout<<endl;


	t1=clock();
	for(int j=0;j<m;j++)
		maopao(a);
		t2=clock();
cout<<"冒泡排序后:"<<endl;	
for(i=0;i<N;i++)
        
        cout<<a[i]<<",";
		cout<<endl;

t3=clock();
for(j=0;j<m;j++)
		kuaisu(b,0,N-1);
		t4=clock();

	cout<<"快速排序后:"<<endl;	
for(i=0;i<N;i++)
        
        cout<<b[i]<<",";
		cout<<endl;

cout<<"冒泡消耗时间(s):"<<(long double)((1.0/m)*(t2-t1))/CLOCKS_PER_SEC<<"s"<<endl;
cout<<"快速消耗时间(s):"<<(long double)((1.0/m)*(t4-t3))/CLOCKS_PER_SEC<<"s"<<endl;
cout<<"冒泡消耗时间"<<(long double)((1.0/m)*(t2-t1))<<endl;
cout<<"快速消耗时间"<<(long double)((1.0/m)*(t4-t3))<<endl;
cout<<"冒泡消耗时间"<<((1.0/m)*(t2-t1))<<endl;
cout<<"快速消耗时间"<<((1.0/m)*(t4-t3))<<endl;
cout<<CLOCKS_PER_SEC<<endl;




}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -