码迷,mamicode.com
首页 > 编程语言 > 详细

简单排序

时间:2015-07-22 00:00:19      阅读:377      评论:0      收藏:0      [点我收藏+]

标签:

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

    时间复杂度 O(n^2)

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

                 技术分享

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

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

  • 插入排序 VS表插入排序

效率比较

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

 

插入排序

表插入排序

原理

简单排序之一

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

比较次数MAX

(N^2-N)/2

N

比较次数AVG

(N^2-N)/4

N/2

复制次数

基本等于比较次数

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

优点

如果数据基本有序 时间为 O(N)

因为while循环条件为假

 

缺点

 

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

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

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

简单排序

标签:

原文地址:http://www.cnblogs.com/cici-new/p/4665950.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!