当前位置:VC爱好者一般性编程Data Structure(数据结构) → 正文
排序算法比较_冒泡,插入,快速,希尔排序算法
本文适合中级读者阅读  作者:郭郭    来源:vcLover.com    日期: 2008/01/31    浏览:

比较冒泡,插入,快速,希尔排序算法。用程序产生1000个0到999之间的随机整数(存放在数据文件中) ,任意选取两个排序方法,对这1000个数据排序,比较两个方法的效率。使用了四个排序算法,分别是冒泡,插入,快速和希尔排序。并比较了排序时间。

下面是各种排序算法使用时间的比较:

具体的代码请下载源代码查看。

产生随机数的算法:

折叠 C/C++ Code
  1. //V*C爱好者vc*lover.com   
  2. //www.vcLover.com   
  3. #define NUM      1000   
  4. #define FILENAME "data.txt"   
  5.   
  6. //生产1000个随机数   
  7. void RandNum(int num,int max)   
  8. {   
  9.     ofstream out(FILENAME);   
  10.     int r;   
  11.     srand(time(NULL)); //取系统时间为随机种子   
  12.     for(int i=0;i<num;i++)   
  13.     {   
  14.         r = rand() % max;   
  15.         out<<r<<" ";   
  16.     }   
  17. }  

冒泡排序算法:

  1. //www.vcLover.com   
  2. //冒泡排序   
  3. void Sort1(int a[],int num)   
  4. {   
  5.     int i,j,temp;    
  6.     for(j=0;j<num;j++)    
  7.     {    
  8.         for (i=0;i<num-j;i++)    
  9.         if (a[i]>a[i+1])    
  10.         {    
  11.             temp=a[i];    
  12.             a[i]=a[i+1];    
  13.             a[i+1]=temp;   
  14.         }    
  15.     }    
  16. }  

 

上一篇:没有了   下一篇:逆波兰表达式_数据结构作业
相关文章
查看全部评论相关评论
评论内容:
昵称: 验证码:验证码
What's New?
What's Hot?
Google Adsense!