摘要: 希尔排序是一种基于插入排序(参见http://blog.csdn.net/a19881029/article/details/21624081)的排序算法插入排序的问题是,如果一个极小的数据处于数组的右端,那么在数组排序过程中,每个数据项平均需要移动N/2次,所有数据大约需要移动N*N/2次,时间复杂度为O(N*N),也就是说在排序过程中,数据项需要移动的次数过多,严重降低了排序的效率如何降低排序过程中数据项的移动次数呢?如果原始数组是一个基本有序的数据,那么平均每个数据项只需移动1次,或不需要移动,所有数据大约只需移动N次,时间复杂度将变为O(N)所以提高插入排序效率的关键就在于如何将原始数 阅读全文
posted @ 2014-04-15 22:54 心意合一 阅读(400) 评论(0) 推荐(0) 编辑