2015年10月4日

基数排序-八大排序汇总(8)

摘要: 基数排序的性能排序类别排序方法时间复杂度空间复杂度稳定性复杂性平均情况最坏情况最好情况基数排序基数排序O(d(n+r))O(d(n+r))O(d(n+r))O(n+r)稳定较复杂时间复杂度:假设在基数排序中,r为基数,d为位数。则基数排序的时间复杂度为O(d(n+r))。可以看出,基数排序的效率和初... 阅读全文

posted @ 2015-10-04 21:11 306573704 阅读(822) 评论(0) 推荐(0) 编辑

归并排序-八大排序汇总(7)

摘要: 基本思想 归并排序简单的说就是递归后合并,该算法是分治法(Divide and Conquer)的一个典型应用。 基本思想为:将待排序序列R[0...n-1]看成是n个长度为1的有序序列,两两有序表成对归并,得到n/2个长度为2的有序表;将这些有序序列再次归并,如此反复进行下去,最后得到一个长度... 阅读全文

posted @ 2015-10-04 20:09 306573704 阅读(388) 评论(0) 推荐(0) 编辑

快速排序(交换排序)-八大排序汇总(6)

摘要: 基本思想 1.先从数列中取出一个数作为基准数。 2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。 3.再对左右区间重复第二步,直到各区间只有一个数。性能 时间复杂度:平均情况下的时间复杂度为O(nlogn)。最坏情况下时间复杂度为O(n2)。 空间复杂度:除... 阅读全文

posted @ 2015-10-04 17:39 306573704 阅读(509) 评论(0) 推荐(0) 编辑

希尔排序(插入排序)-八大排序汇总(5)

摘要: 基本思想 该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。稳定性 由于多次插入排序,我们知道一次插入排序是稳定的,不会改变相... 阅读全文

posted @ 2015-10-04 16:29 306573704 阅读(910) 评论(0) 推荐(0) 编辑

直接插入排序(插入排序)-八大排序汇总(4)

摘要: 基本思想 直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。 直接插入排序是由两层嵌套循环组成的。外层循环标识并决定待比较的数值。内层循环为待比较数值确定其最终位置。直接插入排序是将... 阅读全文

posted @ 2015-10-04 14:56 306573704 阅读(419) 评论(0) 推荐(0) 编辑

冒泡排序(交换排序)-八大排序汇总(3)

摘要: 基本思想 两两相邻元素之间的比较,如果前者大于后者,则交换; 设数组长度为N。 1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。 2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。 3.N=N-1,如果N不为0就重... 阅读全文

posted @ 2015-10-04 10:05 306573704 阅读(617) 评论(0) 推荐(0) 编辑

导航