排序算法总结?归并排序算法?排序算法的比较次数?OPEN 开发经验库

电脑杂谈  发布时间:2016-10-06 14:01:37  来源:网络整理

你是否正在寻找关于排序算法总结的内容?让我把最棒的东西奉献给你:

1、冒泡排序

排序算法总结

冒泡排序是一种简单的排序方法,算法如下:
1.首先将所有待排序的数字放入工作列表中。
2.从列表的第一个数字到倒数第二个数字,逐个检查:若某一位上的数字大于他的下一位,则将它与它的下一位交换。
3.重复2号步骤(倒数的数字加1。例如:第一次到倒数第二个数字,第二次到倒数第三个数字,依此类推...),直至再也不能交换。
用C语言实现如下:

intBubbleSort(int*a,intb)//a是待排序的整型数组,b是待排序数组的元素个数 { inti,j,temp; for(j=0;j<n-1;j++) for(i=0;i<n-1-j;i++) { if(a[i]>a[i+1])//数组元素大小按升序排列 { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; } } }

最差时间复杂度O(n&sup2;)
最优时间复杂度O(n)
平均时间复杂度O(n&sup2;)
最差空间复杂度O(n)total,O(1)auxiliary
.
2、插入排序

排序算法总结

插入排序也是一种简单排序方法,算法如下:
1.从第一个元素开始,认为该元素已经是排好序的。
2.取下一个元素,在已经排好序的元素序列中从后向前扫描,。
3.如果已经排好序的序列中元素大于新元素,则将该元素往右移动一个位置。
4.重复步骤3,直到已排好序的元素小于或等于新元素。
5.在当前位置插入新元素。
6.重复步骤2。
用C实现如下:

intInsertSort(int*a,intb){ inti,j; inttemp; for(i=0;i<

以上就是关于排序算法总结的全部内容,相信你一定会非常满意。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shenmilingyu/article-18191-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...