2013年2月20日
摘要:
首先要理解的几个概念:1. 在原序列中,若Ri = Rj,且i<j,排序后Ri仍在Rj前面,则该排序算法为稳定排序,否则为非稳定排序。2. 排序可分为:内排序(数据在内存中)和外排序(数据在外存中)。本文重点在一些内排序的思想。不贴代码和细节考虑。1. 插入排序基本思想:每次都将一个待排序的数据元素,按其关键字大小,插入到前面已排好序的一组数据元素中的适当位置上,直到所有数据插入完成。直接插入排序:适用于少量数据元素的简单方法,复杂度O(N^2)例子如下(来自wiki):二分插入排序:在a[j]插入之前,a[0],a[1],...,a[j-1]已有序,可利用二分查找,快速找到插入位置,减 阅读全文