摘要: 1.插入排序插入排序逐个处理待排序的记录,每个新纪录与前面已排序的子序列进行比较,将它插入到子序列中正确的位置。void InsertSort(SqList &L){ for(int i=1;i<L.Len;i++) for(int j=i;(j>0)&& (L[j].key<L[j-1].key);j--) swap(L[j],L[j-1]);}最好情况?已按从小到大正序排列,不进入j--的内循环中,总的比较次数为n-1次,所以时间代价为O(n)。最坏情况?逆序排列,每次j的内循环移动到子序列的最前端,每次内循环次数为i,所以总的处理次数为∑i=O( 阅读全文
posted @ 2012-03-01 20:33 ITfresh 阅读(220) 评论(0) 推荐(0) 编辑