简单排序

  • 冒泡排序 选择排序 插入排序

    时间复杂度 O(n^2)数组

  • 冒泡排序è基本不用  过于简单比较次数(见下) 与 交换次数(平均为比较次数的一半) 均正比于N^2

                

  • 选择排序è快于冒泡 交换时间级别大于比较时间级别选择该排序

    比较次数(见下) 正比于N^2 交换次数Nspa

  • 插入排序 VS表插入排序

效率比较排序

插入排序>(略快于)选择排序>冒泡排序ci

 

插入排序table

表插入排序效率

原理原理

简单排序之一循环

利用有序链表插入效率的比较为O(N)的特色im

比较次数MAX链表

(N^2-N)/2

N

比较次数AVG

(N^2-N)/4

N/2

复制次数

基本等于比较次数

复制次数 2N (1次从数组到链表 1次从链表到数组)

优势

若是数据基本有序 时间为 O(N)

由于while循环条件为假

 

缺点

 

开辟差很少两倍的空间(数组和链表必须同时存在)

1  有现成的有序链表类可用

2  表插入排序对不太大的数组排序是比较便利的

相关文章
相关标签/搜索