生软件技术基础第2章解剖.ppt

2.8.2 选择排序 (4) 算法分析 时间复杂度 比较次数: 移动次数: 因此,选择排序的时间复杂度为 O(n2) 空间复杂度 本算法在进行记录交换时,用到3个整数变量,一个记录辅助单元。 因此,选择排序的空间复杂度为 O(1)。 该排序方法是不稳定的。 2.8.3 插入排序 线性插入排序 1)线性插入排序法的基本思想 线性插入排序法是将表看成由已排好序和未排好序的两个部分组成。设表中元素存储在L[1],L[2],…,L[n]中,则初始状态为:已排好序的部分为L[1],未排好序的部分为L[2],L[3],…,L[n];每一趟从未排好序的表中取出下标最小的元素,将其插入到已排好序的表中,直到未排好序的表中为空。 2).例子 设待排数据元素的关键字为(15,14,22,30,37,15,11),每一趟插入排序后的序列状态 。 2.8.3 插入排序 3).算法 INSERTSORT(r,n) for i=2 to n r[0] ←r[i] ; j←i-1 while (r[0]r[j]) do r[j+1] ←r[j]; j←j-1 end(while) r[j+1] ←r[0] end(i) return 2.8.3 插入排序 4).算法分析 a.时间复杂度 最好的情况(有序)

文档评论(0)

1亿VIP精品文档

相关文档