以下的程式包含四种内部搜寻法:Bubble Sort、Selection Sort、Insertion Sort、Quick Sort
程式开始会先以乱数产生十万个数字
( #define _mexlen 100000 )
并让使用者选择排序使用的搜寻法
另外
因数字过多
排序的结果没有印出
但是可以自己把 out(copy) 前面的注解拿掉
排序时
程式会自动纪录系统时间
在排序后显示花掉的时间
方便大家比较各种排序法的快慢
语言:C 语言
编译器: DevC++ 4.9.9.2
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define _maxlen 100000
void out(int* in){
int a;
for(a=0;a<_maxlen;a++){
printf("%4d",in);
if(a%19==18)
printf("\n");
}
}
void selectionSort(int* in){
int a=0,b=0,min=0,tmp=0;;
for(a=0;a<_maxlen;a++){
for(b=a;b<_maxlen;b++){
if(in<in)
min = b;
}
tmp = in;
in = in;
in = tmp;
}
}
void insertionSort(int* in)
{
int first=0,last=_maxlen-1;
int i,j,a;
int temp;
for (i = first+1; i<=last;i++){
temp = in;
j=i-1;
while((j>=first) && (in > temp)){
in = in;
j--;
}
in = temp;
}
}
void bubbleSort(int* in){
int a ..
访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容