以下的程式包含四种内部搜寻法: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 
 可以看到全部内容