排序算法有很多

排序算法有很多

ID:26431057

大小:55.50 KB

页数:12页

时间:2018-11-26

排序算法有很多_第1页
排序算法有很多_第2页
排序算法有很多_第3页
排序算法有很多_第4页
排序算法有很多_第5页
资源描述:

《排序算法有很多》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程工作   对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。   撒旦主要排序法有: 一、冒泡(Bubble)排序——相邻交换 二、选择排序——每次最小/大排在相应的位置 三、插入排序——将下一个插入已排好的序列中 四、壳(Shell)排序——缩小增量 五、归并排序 六、快速排序 七、堆排序 八、拓扑排序 九、锦标赛排序 十、基数排序      一、冒泡(Bubble)排序  --------------

2、--------------------Code从小到大排序n个数------------------------------------ voidBubbleSortArray() {      for(inti=1;ia[j+1])//比较交换相邻元素               {                   inttemp;                   temp=a[j];a[j]=a[j+1];a[j+1]=temp; 

3、              }         }      } } -------------------------------------------------Code------------------------------------------------ 效率O(n²),适用于排序小列表。     二、选择排序 ----------------------------------Code从小到大排序n个数-------------------------------- voidSelectSortArray() {    intmin_index;    for(inti=0

4、;i

5、--------------------------------Code----------------------------------------- 效率O(n²),适用于排序小的列表。     三、插入排序 --------------------------------------------Code从小到大排序n个数------------------------------------- voidInsertSortArray() { for(inti=1;i

6、/temp标记为未排序第一个元素    intj=i-1; while(j>=0&&arr[j]>temp)/*将temp与已排序元素从小到大比较,寻找temp应插入的位置*/ {    arr[j+1]=arr[j];    j--; } arr[j+1]=temp; } } ------------------------------Code-------------------------------------------------------------- 最佳效率O(n);最糟效率O(n²)与冒泡、选择相同,适用于排序小列表 若列表基本有序,则插入排序比冒泡、选择更有效率。   

7、  四、壳(Shell)排序——缩小增量排序 -------------------------------------Code从小到大排序n个数------------------------------------- voidShellSortArray() {  for(intincr=3;incr<0;incr--)//增量递减,以增量3,2,1为例 {       for(intL=0;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。