?? 冒泡排序.cpp
字號:
#include<iostream.h>
#include<stdlib.h>
#include<time.h>
const int n=100000;
int random();
void bubble(int a[],int l);
void main()
{
int *r=(int *)malloc(sizeof(int)*n);
for(int i=0;i<n;i++)
r[i]=random();
long t1,t2;
t1=clock();
bubble(r,n);
t2=clock();
cout<<" 時間: "<<float(t2-t1)/CLK_TCK<<endl;
}
int random()
{
int A=200314;
int M=2003146010;
int Q=M/A;
int R=M%A;
static int x=1;
int x1;
x1=A*(x%Q)-R*(x/Q);
if(x1>=0) x=x1;
else x=x1+M;
return x;
}
void bubble(int a[],int l)
{
int i,temp,work;
for(int pass=1;pass<l;pass++) //對數組排序
{work=1;
for(i=0;i<l-pass;i++)
if(a[i]>a[i+1]) //相鄰元素比較
{temp=a[i];a[i]=a[i+1];a[i+1]=temp;work=0;}
if(work)break;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -