十种排序算法比较

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

十种排序算法比较

排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准:

(1)执行时间

(2)存储空间

(3)编程工作

对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。

主要排序法有:

一、冒泡(Bubble)排序——相邻交换

二、选择排序——每次最小/大排在相应的位置

三、插入排序——将下一个插入已排好的序列中

四、壳(Shell)排序——缩小增量

五、归并排序

六、快速排序

七、堆排序

八、拓扑排序

九、锦标赛排序

十、基数排序

一、冒泡(Bubble)排序

----------------------------------Code 从小到大排序n个数------------------------------------

void BubbleSortArray()

{

for(int i=1;i<n;i++)

{

for(int j=0;i<n-i;j++)

{

if(a[j]>a[j+1])//比较交换相邻元素

{

int temp;

temp=a[j]; a[j]=a[j+1]; a[j+1]=temp;

}

}

}

}

-------------------------------------------------Code------------------------------------------------

效率 O(n²),适用于排序小列表。

二、选择排序

你可能喜欢

  • 算法代码
  • 算术表达式求值演示
  • 数据结构课程设计排序
  • 快速排序算法
  • 直接插入排序算法
  • 希尔排序算法
  • 三种排序算法
  • java排序算法

十种排序算法比较相关文档

最新文档

返回顶部