2014十大排序算法.docxVIP

  • 2
  • 0
  • 约9.59千字
  • 约 14页
  • 2016-12-04 发布于北京
  • 举报
2014十大排序算法

十大排序算法自己根据算法思想,自己编程实现十大排序算法,当然其中也有借鉴别人的地方,所有的程序都是自己经过检验测试没有问题才放出来的。一 算法介绍1 选择排序选择排序的思想就是:从当前数中选出一个最大或者最小的值排在最前面,然后从剩下的数中选出剩下数的最值排在已经排序的数的后面,算法时间复杂度O(n2),在实际工作中这种排序算法不可取。2 冒泡排序冒泡排序的思想就是:比如说要升序排列,那么就依次相邻两个数比较大小,然后把大的数放在后面,依次类推。冒泡排序时间复杂度O(n2),在实际工作中这种排序算法不可取。3 插入排序插入排序思想就是:依次遍历数组,假设前面已经有一部分排过序的,当前待排数字跟前面的数字依次比较大小,将其插在对应顺序位置,算法时间复杂度O(n2),在实际工作中这种排序算法不可取。4 希尔排序希尔排序的思想就是:希尔排序是对插入排序的改进,可以把当前数据分组,每个分组都有一定间隔,比如说原来数组的小标范围是0,1,2,3,4,5,6,7,8,9.我们把它们分成两组,0-4一组,5-9一组,这样的话,间隔就是5,我们令0,5,;1,6;2,7;3,8;4,9,它们两两比较大小。然后再减小间隔范围,或者说增多分组个数,比如此时,间隔为2,那么比较下标为0,2,4,6,8的大小,然后比较下标为1,3,5,7,9的大小。到最后间隔变为1,就变成了完全的插入排序了。希尔排序的算

文档评论(0)

1亿VIP精品文档

相关文档