摘要: 直接插入排序: 基本思想: 把n个待排序的元素看成一个有序表和一个无序表,开始时有序表中只有一个元素,无序表中有n-1个元素;排序过程即每次从无序表中取出第一个元素,将它插入到有序表中,使之成为新的有序表,重复n-1次完成整个排序过程。 实例: 0.初始状态 3,1,5,7,2,4,9,6(共8个数 阅读全文
posted @ 2018-12-16 16:46 爱学英语的程序媛 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 选择排序 Selection Sort 1)在数组中找最小的数与第一个位置上的数交换; 2)找第二小的数与第二个位置上的数交换; 3)以此类推 完整代码: 相应头文件:Student.h 阅读全文
posted @ 2018-12-16 15:06 爱学英语的程序媛 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 归并排序:先将数组一分为二,将左边部分排序(同样将其一分为二),再将右边部分排序,最后逐层归并。(分治策略)(稳定排序)。 算法稳定性 -- 假设在数列中存在a[i]=a[j],若在排序之前,a[i]在a[j]前面;并且排序之后,a[i]仍然在a[j]前面。则这个排序算法是稳定的! 先排序的时间复杂 阅读全文
posted @ 2018-12-16 14:42 爱学英语的程序媛 阅读(194) 评论(0) 推荐(0) 编辑